N-API on JerryScript
summary
Implements N-API on JerryScript so ABI-stable Node native add-ons can run on a tiny VM whose entire heap is a linker section (≈1 KB) and that enforces strict memory checks. Uses a test-conversion script (binding.gyp → CMake), Babel to downlevel ES6, and adds library constructors and a JerryScript context data API to attach per-global envs; implements weak references by scanning engine objects (inefficient but functional). Many N-API tests build and run after Node.js test cleanups; symbols and some ES6 features remain blockers.
AI-written summary · about
chapters (10)
- 0:00Intro
- 0:27What is Jerry Script?
- 2:52What is N-API?
- 4:17JerryScript Requirements for N-API
- 8:28N-API Test Conversion
- 12:17jerry get_context data
- 15:47Module Support - FEATURE INIT FIND
- 21:16Module Support - Trace through
- 22:16Weak References
- 27:18The Code
related talks
26mN-API - next generation Node API for native modules
28mN-API - The new native in node.js
55mNode.js N-API for Rust
39mNext Generation N-API: A Hands-on Workshop
41mJerryScript: An Ultra-lightweight JavaScript Engine for the Internet of Things
25mIntroduction to native extensions
49mnjs — native JavaScript scripting in nginx
36mScaling NodeJS apps with N-API by Ruben Harutyunyan (Arm) | JSConfAM19
