(See CHANGELOG.md for complete Changelog)
node-api-headers contains the header files for the C-based Node-API provided by Node.js. Node-API is an API for building native addons that guarantees the ABI (Application Binary Interface) stability across versions of Node.js (see: Node-API).
Node-API headers are in the include
folder. The Node-APIs that provide
ECMAScript features from native code can be found in js_native_api_types.h
and js_native_api.h
. The APIs defined in these headers are included in
node_api_types.h
and node_api.h
.
The headers are structured in this way in order to allow implementations of
Node-API outside of Node.js considering that for those implementations the
Node.js specific APIs may not be applicable.
node-api-headers is also a package published on npm that could be used in a process to compile and build native addons for Node.js.
npm i node-api-headers
Node-API C headers are backward-compatible. Its version (e.g. 8
) is released
separately from the Node.js version stream (e.g. 19.8.1
) and changes are
backported to active Node.js LTS lines (e.g. 16.x
and 18.x
).
This package publishes semver-minor versions with new Node-API C headers changes. JS API breaking changes are published with new semver-major versions.
The module exports two properties include_dir
and symbols
.
This property is a string that represents the include path for the Node-API headers.
This property is an object that has two keys js_native_api_def
and
node_api_def
which represents the path of the module definition file for the
js_native_api
and node_api
respectively.
This property is an object that represents the symbols exported by Node-API grouped by version and api types.
V1: {
js_native_api_symbols: [
// List of symbols in js_native_api.h for the version 1.
],
node_api_symbols: [
// List of symbols in node_api.h for the version 1
]
},
// ...
Name | GitHub Link |
---|---|
Anna Henningsen | addaleax |
Chengzhong Wu | legendecas |
Gabriel Schulhof | gabrielschulhof |
Hitesh Kanwathirtha | digitalinfinity |
Jim Schlight | jschlight |
Michael Dawson | mhdawson |
Kevin Eady | KevinEady |
Nicola Del Gobbo | NickNaso |
Licensed under MIT