-
Notifications
You must be signed in to change notification settings - Fork 31
Description
Adapted from internal feedback:
It would have been helpful if there had been a more descriptive documentation explaining about doing basic things using ChakraCore, like how to expose classes to js, how to receive objects from js with the current state, namespaces, how to get/set attributes, how to invoke a js function, and how to export a C++ function to js. We had to dig into the sample projects hosted in the github page to understand how to do things in ChakraCore. A better documentation could have helped and saved time for us.
If this information is already available in a form other than the example projects, we should try to improve the discoverability of that info.
Adding @liminzhu's list of topics to the main post so we get the handy progress meter:
-
Expose native functions / external objects to JavaScriptAdd JSRT basic tasks tutorials #44 - Embed JavaScript functions in C/C++ (suggested by @kphillisjr in Documentation Improvements: How to do basic things with ChakraCore #5 (comment))
- Handle object lifetime and memory management; common AV issues in .NET
- Implement a simple event-loop and task queue + using promises in JSRT
-
Script serialization with lazy source loadingAdd JSRT basic tasks tutorials #44 - Resource throttling
- Define non-writable property from C/C++(a.k.a. using descriptor)
- Define C/C++ Getter and Setter
- TypedArray handling in C/C++
- Iterating JS array ans setting properties in C++
-
Call functionsAdd JSRT basic tasks tutorials #44 - Set up ES6 modules + dynamic import
- Add native interceptors to JavaScript properties