nodejs/nan
Native Abstractions for Node.js observed · 2026-08-28
Health v2 · maintenance only
72/100
- Activity 89
- Release rhythm 35
- Longevity 100
Flags: no_releases
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 4792
- days_rel: n/a
- days_push: 69
- n_releases_24m: 0
Adoption not part of the score
3353 stars · 529 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
NAN (Native Abstractions for Node.js) is a header-only C++ library of macros and utilities that simplifies writing native Node.js add-ons that compile across many Node.js and V8 versions. It abstracts away version-specific V8 and Node core API differences so addon authors avoid manual NODE_MODULE_VERSION handling.
Use cases
- write native C++ addons for node.js
- compile a node addon across multiple node versions
- avoid v8 api breaking changes in native modules
- build a c++ extension for nodejs
- maintain legacy native node modules
When to choose
- you need to support Node.js versions older than those covered by N-API/node-addon-api
- you are maintaining an existing addon already built on NAN
- you need fine-grained access to V8 APIs with version abstraction
When to avoid
- you are starting a new addon - prefer N-API via node-addon-api for ABI stability
- you only need JavaScript-level functionality with no native code
- you want addons that compile once and run across Node versions without recompilation
Facets
library · maturity maintenance
sdk developer-tools plugin-system developer-tools programming-languages cpp cross-platform native-addons v8 c++-bindings node-api header-only nodejs
1 source
- readme: https://github.com/nodejs/nan · fetched 2026-08-28 · 039aecd49963
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| nodejs/nan | main | 72 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem