API Support
How much of each Node.js builtin module works outside Node. This covers 62 modules, measured in 2 of 2 environments at commit 3b8da01.
Note
These pages are generated from the project's test reports, so the numbers change as the project does.
#How to read these pages
Each module is checked in two ways:
- Exports available: whether each name Node exports, such as
fs.readFile, is there when you import the module. - Node's tests passing: how many of Node's own tests for the module pass.
Each check runs in these environments:
- nstd: The standalone runtime, built on QuickJS-NG and a Zig host.
- Browser: Export names and behavior checks come from an optimistic estimate: V8 with
file:URLs and no DOM, so anything failing there also fails in a real browser. Node's own tests run in a real page: each test is a whole program in headless Chrome, which is why tests needing child processes, signals or a secondvmrealm fail there.
#Summary
Each percentage is out of what its report counts: export names, or Node's tests. Each environment runs its own selection of Node's tests, so a test percentage in one environment can't be compared directly with another.
Node.js itself isn't an environment here. Its own builtins are the reference every environment is compared with, and nstdlib running inside Node isn't a way anyone deploys it, so those runs are kept as diagnostics on each module page rather than as a row.
#By environment
| Environment | Modules measured | ✅ Works | ⚠️ Some support | ❔ Not tested | ❌ Unavailable | Exports available (average) | Node's tests passing |
|---|---|---|---|---|---|---|---|
| nstd | 48 of 62 | 26 | 22 | 0 | 0 | – | 67.64% (46 modules) |
| Browser | 62 of 62 | 27 | 5 | 29 | 1 | 98.49% | 60.14% (45 modules) |
- Exports available (average) is the average share of Node's export names found in each module. It's blank for an environment that is only checked by behavior.
- Node's tests passing is the share of Node's tests that pass, over the modules the test suite reached. It's a separate measurement from exports.
- Both depend on the reports listed under Report sources.
#Support by module
Each module has its own page with the details:
node:assert · node:assert/strict · node:async_hooks · node:buffer · node:child_process · node:cluster · node:console · node:constants · node:crypto · node:dgram · node:diagnostics_channel · node:dns · node:dns/promises · node:domain · node:events · node:fs · node:fs/promises · node:http · node:http2 · node:https · node:inspector · node:inspector/promises · node:module · node:net · node:os · node:path · node:path/posix · node:path/win32 · node:perf_hooks · node:process · node:punycode · node:querystring · node:readline · node:readline/promises · node:repl · node:stream · node:stream/consumers · node:stream/promises · node:stream/web · node:string_decoder · node:sys · node:timers · node:timers/promises · node:tls · node:trace_events · node:tty · node:url · node:util · node:util/types · node:v8 · node:vm · node:wasi · node:worker_threads · node:zlib
Internal modules: node:_http_agent · node:_http_client · node:_http_common · node:_http_incoming · node:_http_outgoing · node:_http_server · node:_tls_common · node:_tls_wrap
#Report sources
The numbers on these pages come from the reports below. A missing report only means that environment wasn't measured, not that anything is broken.
| Report | Environment | Created | Commit | Notes |
|---|---|---|---|---|
browser | Browser | 2026-10-01T14:16:32.639Z | 3b8da01 | |
browser-node-suite | Browser | 2026-10-01T14:21:13.217Z | 3b8da01 | |
coverage | Node.js (reference and diagnostics) | 2026-10-01T14:16:26.650Z | 3b8da01 | |
native-differentials | nstd | 2026-10-01T14:27:24.422Z | 3b8da01 | |
native-node-suite | nstd | 2026-10-01T14:28:17.718Z | 3b8da01 | |
node-suite | Node.js (reference and diagnostics) | 2026-10-01T14:24:32.942Z | 3b8da01 | |
smoke | Node.js (reference and diagnostics) | 2026-10-01T14:16:25.272Z | 3b8da01 | |
vitest | Node.js (reference and diagnostics) | 2026-10-01T14:16:55.006Z | 3b8da01 | |
wasm-differentials | Node.js (reference and diagnostics) | 2026-10-01T14:28:28.950Z | 3b8da01 |