11cb0ef41Sopenharmony_ci# About this documentation
21cb0ef41Sopenharmony_ci
31cb0ef41Sopenharmony_ci<!--introduced_in=v0.10.0-->
41cb0ef41Sopenharmony_ci
51cb0ef41Sopenharmony_ci<!-- type=misc -->
61cb0ef41Sopenharmony_ci
71cb0ef41Sopenharmony_ciWelcome to the official API reference documentation for Node.js!
81cb0ef41Sopenharmony_ci
91cb0ef41Sopenharmony_ciNode.js is a JavaScript runtime built on the [V8 JavaScript engine][].
101cb0ef41Sopenharmony_ci
111cb0ef41Sopenharmony_ci## Contributing
121cb0ef41Sopenharmony_ci
131cb0ef41Sopenharmony_ciReport errors in this documentation in [the issue tracker][]. See
141cb0ef41Sopenharmony_ci[the contributing guide][] for directions on how to submit pull requests.
151cb0ef41Sopenharmony_ci
161cb0ef41Sopenharmony_ci## Stability index
171cb0ef41Sopenharmony_ci
181cb0ef41Sopenharmony_ci<!--type=misc-->
191cb0ef41Sopenharmony_ci
201cb0ef41Sopenharmony_ciThroughout the documentation are indications of a section's stability. Some APIs
211cb0ef41Sopenharmony_ciare so proven and so relied upon that they are unlikely to ever change at all.
221cb0ef41Sopenharmony_ciOthers are brand new and experimental, or known to be hazardous.
231cb0ef41Sopenharmony_ci
241cb0ef41Sopenharmony_ciThe stability indices are as follows:
251cb0ef41Sopenharmony_ci
261cb0ef41Sopenharmony_ci> Stability: 0 - Deprecated. The feature may emit warnings. Backward
271cb0ef41Sopenharmony_ci> compatibility is not guaranteed.
281cb0ef41Sopenharmony_ci
291cb0ef41Sopenharmony_ci<!-- separator -->
301cb0ef41Sopenharmony_ci
311cb0ef41Sopenharmony_ci> Stability: 1 - Experimental. The feature is not subject to
321cb0ef41Sopenharmony_ci> [semantic versioning][] rules. Non-backward compatible changes or removal may
331cb0ef41Sopenharmony_ci> occur in any future release. Use of the feature is not recommended in
341cb0ef41Sopenharmony_ci> production environments.
351cb0ef41Sopenharmony_ci
361cb0ef41Sopenharmony_ci<!-- separator -->
371cb0ef41Sopenharmony_ci
381cb0ef41Sopenharmony_ci> Stability: 2 - Stable. Compatibility with the npm ecosystem is a high
391cb0ef41Sopenharmony_ci> priority.
401cb0ef41Sopenharmony_ci
411cb0ef41Sopenharmony_ci<!-- separator -->
421cb0ef41Sopenharmony_ci
431cb0ef41Sopenharmony_ci> Stability: 3 - Legacy. Although this feature is unlikely to be removed and is
441cb0ef41Sopenharmony_ci> still covered by semantic versioning guarantees, it is no longer actively
451cb0ef41Sopenharmony_ci> maintained, and other alternatives are available.
461cb0ef41Sopenharmony_ci
471cb0ef41Sopenharmony_ciFeatures are marked as legacy rather than being deprecated if their use does no
481cb0ef41Sopenharmony_ciharm, and they are widely relied upon within the npm ecosystem. Bugs found in
491cb0ef41Sopenharmony_cilegacy features are unlikely to be fixed.
501cb0ef41Sopenharmony_ci
511cb0ef41Sopenharmony_ciUse caution when making use of Experimental features, particularly within
521cb0ef41Sopenharmony_cimodules. Users may not be aware that experimental features are being used.
531cb0ef41Sopenharmony_ciBugs or behavior changes may surprise users when Experimental API
541cb0ef41Sopenharmony_cimodifications occur. To avoid surprises, use of an Experimental feature may need
551cb0ef41Sopenharmony_cia command-line flag. Experimental features may also emit a [warning][].
561cb0ef41Sopenharmony_ci
571cb0ef41Sopenharmony_ci## Stability overview
581cb0ef41Sopenharmony_ci
591cb0ef41Sopenharmony_ci<!-- STABILITY_OVERVIEW_SLOT_BEGIN -->
601cb0ef41Sopenharmony_ci| API | Stability |
611cb0ef41Sopenharmony_ci| --- | --------- |
621cb0ef41Sopenharmony_ci| [Assert](assert.html) | (2) Stable |
631cb0ef41Sopenharmony_ci| [Async hooks](async_hooks.html) | (1) Experimental |
641cb0ef41Sopenharmony_ci| [Asynchronous context tracking](async_context.html) | (2) Stable |
651cb0ef41Sopenharmony_ci| [Buffer](buffer.html) | (2) Stable |
661cb0ef41Sopenharmony_ci| [Child process](child_process.html) | (2) Stable |
671cb0ef41Sopenharmony_ci| [Cluster](cluster.html) | (2) Stable |
681cb0ef41Sopenharmony_ci| [Console](console.html) | (2) Stable |
691cb0ef41Sopenharmony_ci| [Crypto](crypto.html) | (2) Stable |
701cb0ef41Sopenharmony_ci| [Diagnostics Channel](diagnostics_channel.html) | (2) Stable |
711cb0ef41Sopenharmony_ci| [DNS](dns.html) | (2) Stable |
721cb0ef41Sopenharmony_ci| [Domain](domain.html) | (0) Deprecated |
731cb0ef41Sopenharmony_ci| [File system](fs.html) | (2) Stable |
741cb0ef41Sopenharmony_ci| [HTTP](http.html) | (2) Stable |
751cb0ef41Sopenharmony_ci| [HTTP/2](http2.html) | (2) Stable |
761cb0ef41Sopenharmony_ci| [HTTPS](https.html) | (2) Stable |
771cb0ef41Sopenharmony_ci| [Inspector](inspector.html) | (2) Stable |
781cb0ef41Sopenharmony_ci| [Modules: `node:module` API](module.html) | (1) .1 - Active development |
791cb0ef41Sopenharmony_ci| [Modules: CommonJS modules](modules.html) | (2) Stable |
801cb0ef41Sopenharmony_ci| [OS](os.html) | (2) Stable |
811cb0ef41Sopenharmony_ci| [Path](path.html) | (2) Stable |
821cb0ef41Sopenharmony_ci| [Performance measurement APIs](perf_hooks.html) | (2) Stable |
831cb0ef41Sopenharmony_ci| [Punycode](punycode.html) | (0) Deprecated |
841cb0ef41Sopenharmony_ci| [Query string](querystring.html) | (2) Stable |
851cb0ef41Sopenharmony_ci| [Readline](readline.html) | (2) Stable |
861cb0ef41Sopenharmony_ci| [REPL](repl.html) | (2) Stable |
871cb0ef41Sopenharmony_ci| [Single executable applications](single-executable-applications.html) | (1) Experimental: This feature is being designed and will change. |
881cb0ef41Sopenharmony_ci| [Stream](stream.html) | (2) Stable |
891cb0ef41Sopenharmony_ci| [String decoder](string_decoder.html) | (2) Stable |
901cb0ef41Sopenharmony_ci| [Test runner](test.html) | (1) Experimental |
911cb0ef41Sopenharmony_ci| [Timers](timers.html) | (2) Stable |
921cb0ef41Sopenharmony_ci| [TLS (SSL)](tls.html) | (2) Stable |
931cb0ef41Sopenharmony_ci| [Trace events](tracing.html) | (1) Experimental |
941cb0ef41Sopenharmony_ci| [TTY](tty.html) | (2) Stable |
951cb0ef41Sopenharmony_ci| [UDP/datagram sockets](dgram.html) | (2) Stable |
961cb0ef41Sopenharmony_ci| [URL](url.html) | (2) Stable |
971cb0ef41Sopenharmony_ci| [Util](util.html) | (2) Stable |
981cb0ef41Sopenharmony_ci| [VM (executing JavaScript)](vm.html) | (2) Stable |
991cb0ef41Sopenharmony_ci| [Web Crypto API](webcrypto.html) | (1) Experimental |
1001cb0ef41Sopenharmony_ci| [Web Streams API](webstreams.html) | (1) Experimental. |
1011cb0ef41Sopenharmony_ci| [WebAssembly System Interface (WASI)](wasi.html) | (1) Experimental |
1021cb0ef41Sopenharmony_ci| [Worker threads](worker_threads.html) | (2) Stable |
1031cb0ef41Sopenharmony_ci| [Zlib](zlib.html) | (2) Stable |
1041cb0ef41Sopenharmony_ci<!-- STABILITY_OVERVIEW_SLOT_END -->
1051cb0ef41Sopenharmony_ci
1061cb0ef41Sopenharmony_ci## JSON output
1071cb0ef41Sopenharmony_ci
1081cb0ef41Sopenharmony_ci<!-- YAML
1091cb0ef41Sopenharmony_ciadded: v0.6.12
1101cb0ef41Sopenharmony_ci-->
1111cb0ef41Sopenharmony_ci
1121cb0ef41Sopenharmony_ciEvery `.html` document has a corresponding `.json` document. This is for IDEs
1131cb0ef41Sopenharmony_ciand other utilities that consume the documentation.
1141cb0ef41Sopenharmony_ci
1151cb0ef41Sopenharmony_ci## System calls and man pages
1161cb0ef41Sopenharmony_ci
1171cb0ef41Sopenharmony_ciNode.js functions which wrap a system call will document that. The docs link
1181cb0ef41Sopenharmony_cito the corresponding man pages which describe how the system call works.
1191cb0ef41Sopenharmony_ci
1201cb0ef41Sopenharmony_ciMost Unix system calls have Windows analogues. Still, behavior differences may
1211cb0ef41Sopenharmony_cibe unavoidable.
1221cb0ef41Sopenharmony_ci
1231cb0ef41Sopenharmony_ci[V8 JavaScript engine]: https://v8.dev/
1241cb0ef41Sopenharmony_ci[semantic versioning]: https://semver.org/
1251cb0ef41Sopenharmony_ci[the contributing guide]: https://github.com/nodejs/node/blob/HEAD/CONTRIBUTING.md
1261cb0ef41Sopenharmony_ci[the issue tracker]: https://github.com/nodejs/node/issues/new
1271cb0ef41Sopenharmony_ci[warning]: process.md#event-warning
128