https://github.com/electron/node-abi
:turtle: :rocket: Get the Node.js and Electron ABI for a given target and runtime
https://github.com/electron/node-abi
Last synced: 26 days ago
JSON representation
:turtle: :rocket: Get the Node.js and Electron ABI for a given target and runtime
- Host: GitHub
- URL: https://github.com/electron/node-abi
- Owner: electron
- License: mit
- Created: 2016-12-02T23:51:20.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2025-05-07T23:31:23.000Z (about 1 month ago)
- Last Synced: 2025-05-11T12:38:52.292Z (29 days ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/node-abi
- Size: 378 KB
- Stars: 171
- Watchers: 9
- Forks: 61
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Node.js ABI
[](https://github.com/electron/node-abi/actions/workflows/test.yml)
[](https://github.com/electron/node-abi/actions/workflows/update-abi.yml)
[](https://snyk.io/test/github/electron/node-abi)
[](https://npmjs.org/package/node-abi)Get the Node ABI (application binary interface) for a given target and runtime, and vice versa.
## Installation
```shell
npm install node-abi
```## Usage
```javascript
const nodeAbi = require('node-abi')nodeAbi.getAbi('7.2.0', 'node')
// '51'
nodeAbi.getAbi('1.4.10', 'electron')
// '50'
nodeAbi.getTarget('51', 'node')
// '7.2.0'
nodeAbi.getTarget('50', 'electron')
// '1.4.15'nodeAbi.allTargets
// [
// { runtime: 'node', target: '0.10.48', abi: '11', lts: false },
// { runtime: 'node', target: '0.12.17', abi: '14', lts: false },
// { runtime: 'node', target: '4.6.1', abi: '46', lts: true },
// { runtime: 'node', target: '5.12.0', abi: '47', lts: false },
// { runtime: 'node', target: '6.9.4', abi: '48', lts: true },
// { runtime: 'node', target: '7.4.0', abi: '51', lts: false },
// { runtime: 'electron', target: '1.0.2', abi: '47', lts: false },
// { runtime: 'electron', target: '1.2.8', abi: '48', lts: false },
// { runtime: 'electron', target: '1.3.13', abi: '49', lts: false },
// { runtime: 'electron', target: '1.4.15', abi: '50', lts: false }
// ]
nodeAbi.deprecatedTargets
nodeAbi.supportedTargets
nodeAbi.additionalTargets
nodeAbi.futureTargets
// ...
```## References
- https://github.com/lgeiger/electron-abi
- https://nodejs.org/en/download/releases/
- https://github.com/nodejs/Release