Skip to content

🐢 🚀 Get the Node.js and Electron ABI for a given target and runtime

License

Notifications You must be signed in to change notification settings

electron/node-abi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fce7362 · Mar 10, 2025
Mar 3, 2025
Mar 3, 2025
Mar 3, 2025
Sep 1, 2021
Mar 3, 2025
Oct 21, 2021
Nov 13, 2024
Dec 2, 2016
Nov 13, 2024
Mar 10, 2025
Mar 3, 2025
Mar 3, 2025
Mar 3, 2025
Mar 3, 2025

Repository files navigation

Node.js ABI

Build Status Auto-update ABI JSON file Snyk badge npm version

Get the Node ABI (application binary interface) for a given target and runtime, and vice versa.

Installation

npm install node-abi

Usage

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