From 8c08d985217d9943fe8e4e3d302008d6f3991500 Mon Sep 17 00:00:00 2001 From: Siddhanth Gupta Date: Sun, 23 Nov 2025 14:23:58 +0530 Subject: [PATCH] docs: rewrite README for clarity and improved structure --- README.md | 936 ++++-------------------------------------------------- 1 file changed, 57 insertions(+), 879 deletions(-) diff --git a/README.md b/README.md index 5ad7462e7054a1..b0fc800fdb31d4 100644 --- a/README.md +++ b/README.md @@ -1,921 +1,99 @@ # Node.js -Node.js is an open-source, cross-platform JavaScript runtime environment. +Node.js is an open-source, cross-platform JavaScript runtime. -For information on using Node.js, see the [Node.js website][]. +For documentation, guides, and downloads, visit the [Node.js website][]. +The project operates under an open governance model and is supported by the [OpenJS Foundation][]. -The Node.js project uses an [open governance model](./GOVERNANCE.md). The -[OpenJS Foundation][] provides support for the project. +Contributors are expected to collaborate respectfully and help move the project forward. +The [TSC](./GOVERNANCE.md#technical-steering-committee) may limit participation from anyone who repeatedly disrupts the community. -Contributors are expected to act in a collaborative manner to move -the project forward. We encourage the constructive exchange of contrary -opinions and compromise. The [TSC](./GOVERNANCE.md#technical-steering-committee) -reserves the right to limit or block contributors who repeatedly act in ways -that discourage, exhaust, or otherwise negatively affect other participants. - -**This project has a [Code of Conduct][].** +**This project follows the [Code of Conduct][].** ## Table of contents - -* [Support](#support) -* [Release types](#release-types) - * [Download](#download) - * [Current and LTS releases](#current-and-lts-releases) - * [Nightly releases](#nightly-releases) - * [API documentation](#api-documentation) - * [Verifying binaries](#verifying-binaries) -* [Building Node.js](#building-nodejs) -* [Security](#security) -* [Contributing to Node.js](#contributing-to-nodejs) -* [Current project team members](#current-project-team-members) - * [TSC (Technical Steering Committee)](#tsc-technical-steering-committee) - * [Collaborators](#collaborators) - * [Triagers](#triagers) - * [Release keys](#release-keys) -* [License](#license) +- [Support](#support) +- [Release types](#release-types) +- [Download](#download) +- [Verifying binaries](#verifying-binaries) +- [Building Node.js](#building-nodejs) +- [Security](#security) +- [Contributing to Node.js](#contributing-to-nodejs) +- [Current project team members](#current-project-team-members) +- [License](#license) ## Support - -Looking for help? Check out the -[instructions for getting support](.github/SUPPORT.md). +If you need help using Node.js, see the [support guidelines](.github/SUPPORT.md). ## Release types -* **Current**: Under active development. Code for the Current release is in the - branch for its major version number (for example, - [v22.x](https://github.com/nodejs/node/tree/v22.x)). Node.js releases a new - major version every 6 months, allowing for breaking changes. This happens in - April and October every year. Releases appearing each October have a support - life of 8 months. Releases appearing each April convert to LTS (see below) - each October. -* **LTS**: Releases that receive Long Term Support, with a focus on stability - and security. Every even-numbered major version will become an LTS release. - LTS releases receive 12 months of _Active LTS_ support and a further 18 months - of _Maintenance_. LTS release lines have alphabetically-ordered code names, - beginning with v4 Argon. There are no breaking changes or feature additions, - except in some special circumstances. -* **Nightly**: Code from the Current branch built every 24-hours when there are - changes. Use with caution. - -Current and LTS releases follow [semantic versioning](https://semver.org). A -member of the Release Team [signs](#release-keys) each Current and LTS release. -For more information, see the -[Release README](https://github.com/nodejs/Release#readme). - -### Download - -Binaries, installers, and source tarballs are available at -. - -#### Current and LTS releases +### Current +Actively developed. A new major version ships every April and October. +April releases transition to LTS in October. - +### LTS +Even-numbered major versions become LTS. +Each receives 12 months of Active LTS and 18 months of Maintenance. +No breaking changes unless necessary. -The [latest](https://nodejs.org/download/release/latest/) directory is an -alias for the latest Current release. The latest-_codename_ directory is an -alias for the latest release from an LTS line. For example, the -[latest-hydrogen](https://nodejs.org/download/release/latest-hydrogen/) -directory contains the latest Hydrogen (Node.js 18) release. +### Nightly +Daily builds from the Current branch. Intended for testing. -#### Nightly releases +All Current and LTS releases follow semantic versioning. +Each signed release is produced by a member of the Release Team. +More information is available in the [Release README](https://github.com/nodejs/Release#readme). - +## Download -Each directory and filename includes the version (e.g., `v22.0.0`), -followed by the UTC date (e.g., `20240424` for April 24, 2024), -and the short commit SHA of the HEAD of the release (e.g., `ddd0a9e494`). -For instance, a full directory name might look like `v22.0.0-nightly20240424ddd0a9e494`. +Official downloads: +https://nodejs.org/en/download/ -#### API documentation +- Latest Current: https://nodejs.org/download/release/latest/ +- Latest for each LTS line: https://nodejs.org/download/release/latest-/ +- Nightly builds: https://nodejs.org/download/nightly/ -Documentation for the latest Current release is at . -Version-specific documentation is available in each release directory in the -_docs_ subdirectory. Version-specific documentation is also at -. +API documentation: https://nodejs.org/api/ -### Verifying binaries +## Verifying binaries -Download directories contain a `SHASUMS256.txt.asc` file with SHA checksums for the -files and the releaser PGP signature. +Each download directory includes `SHASUMS256.txt.asc` with checksums and a PGP signature. -You can get a trusted keyring from nodejs/release-keys, e.g. using `curl`: +Download the project keyring: ```bash -curl -fsLo "/path/to/nodejs-keyring.kbx" "https://github.com/nodejs/release-keys/raw/HEAD/gpg/pubring.kbx" +curl -fsLo "./nodejs-keyring.kbx" "https://github.com/nodejs/release-keys/raw/HEAD/gpg/pubring.kbx" ``` -Alternatively, you can import the releaser keys in your default keyring, see -[Release keys](#release-keys) for commands to how to do that. - -Then, you can verify the files you've downloaded locally -(if you're using your default keyring, pass `--keyring="${GNUPGHOME:-~/.gnupg}/pubring.kbx"`): +Verify downloaded files: ```bash -curl -fsO "https://nodejs.org/dist/${VERSION}/SHASUMS256.txt.asc" \ -&& gpgv --keyring="/path/to/nodejs-keyring.kbx" --output SHASUMS256.txt < SHASUMS256.txt.asc \ -&& shasum --check SHASUMS256.txt --ignore-missing +curl -fsO "https://nodejs.org/dist/${VERSION}/SHASUMS256.txt.asc" && gpgv --keyring="./nodejs-keyring.kbx" --output SHASUMS256.txt < SHASUMS256.txt.asc && shasum --check SHASUMS256.txt --ignore-missing ``` ## Building Node.js - -See [BUILDING.md](BUILDING.md) for instructions on how to build Node.js from -source and a list of supported platforms. +See [BUILDING.md](BUILDING.md) for build instructions and supported platforms. ## Security - -For information on reporting security vulnerabilities in Node.js, see -[SECURITY.md](./SECURITY.md). +To report a security issue, see [SECURITY.md](./SECURITY.md). ## Contributing to Node.js - -* [Contributing to the project][] -* [Working Groups][] -* [Strategic initiatives][] -* [Technical values and prioritization][] +- [Contributing to the project][] +- [Working Groups][] +- [Strategic initiatives][] +- [Technical values and prioritization][] ## Current project team members - -For information about the governance of the Node.js project, see -[GOVERNANCE.md](./GOVERNANCE.md). - - - -### TSC (Technical Steering Committee) - -#### TSC voting members - - - -* [aduh95](https://github.com/aduh95) - - **Antoine du Hamel** <> (he/him) -* [anonrig](https://github.com/anonrig) - - **Yagiz Nizipli** <> (he/him) -* [benjamingr](https://github.com/benjamingr) - - **Benjamin Gruenbaum** <> -* [BridgeAR](https://github.com/BridgeAR) - - **Ruben Bridgewater** <> (he/him) -* [gireeshpunathil](https://github.com/gireeshpunathil) - - **Gireesh Punathil** <> (he/him) -* [jasnell](https://github.com/jasnell) - - **James M Snell** <> (he/him) -* [joyeecheung](https://github.com/joyeecheung) - - **Joyee Cheung** <> (she/her) -* [legendecas](https://github.com/legendecas) - - **Chengzhong Wu** <> (he/him) -* [marco-ippolito](https://github.com/marco-ippolito) - - **Marco Ippolito** <> (he/him) -* [mcollina](https://github.com/mcollina) - - **Matteo Collina** <> (he/him) -* [panva](https://github.com/panva) - - **Filip Skokan** <> (he/him) -* [RafaelGSS](https://github.com/RafaelGSS) - - **Rafael Gonzaga** <> (he/him) -* [RaisinTen](https://github.com/RaisinTen) - - **Darshan Sen** <> (he/him) -* [richardlau](https://github.com/richardlau) - - **Richard Lau** <> -* [ronag](https://github.com/ronag) - - **Robert Nagy** <> -* [ruyadorno](https://github.com/ruyadorno) - - **Ruy Adorno** <> (he/him) -* [ShogunPanda](https://github.com/ShogunPanda) - - **Paolo Insogna** <> (he/him) -* [targos](https://github.com/targos) - - **Michaël Zasso** <> (he/him) -* [tniessen](https://github.com/tniessen) - - **Tobias Nießen** <> (he/him) - -#### TSC regular members - -* [BethGriggs](https://github.com/BethGriggs) - - **Beth Griggs** <> (she/her) -* [bnoordhuis](https://github.com/bnoordhuis) - - **Ben Noordhuis** <> -* [cjihrig](https://github.com/cjihrig) - - **Colin Ihrig** <> (he/him) -* [codebytere](https://github.com/codebytere) - - **Shelley Vohr** <> (she/her) -* [GeoffreyBooth](https://github.com/GeoffreyBooth) - - **Geoffrey Booth** <> (he/him) -* [MoLow](https://github.com/MoLow) - - **Moshe Atlow** <> (he/him) -* [Trott](https://github.com/Trott) - - **Rich Trott** <> (he/him) - -
- -TSC emeriti members - -#### TSC emeriti members - -* [addaleax](https://github.com/addaleax) - - **Anna Henningsen** <> (she/her) -* [apapirovski](https://github.com/apapirovski) - - **Anatoli Papirovski** <> (he/him) -* [ChALkeR](https://github.com/ChALkeR) - - **Сковорода Никита Андреевич** <> (he/him) -* [chrisdickinson](https://github.com/chrisdickinson) - - **Chris Dickinson** <> -* [danbev](https://github.com/danbev) - - **Daniel Bevenius** <> (he/him) -* [danielleadams](https://github.com/danielleadams) - - **Danielle Adams** <> (she/her) -* [evanlucas](https://github.com/evanlucas) - - **Evan Lucas** <> (he/him) -* [fhinkel](https://github.com/fhinkel) - - **Franziska Hinkelmann** <> (she/her) -* [Fishrock123](https://github.com/Fishrock123) - - **Jeremiah Senkpiel** <> (he/they) -* [gabrielschulhof](https://github.com/gabrielschulhof) - - **Gabriel Schulhof** <> -* [gibfahn](https://github.com/gibfahn) - - **Gibson Fahnestock** <> (he/him) -* [indutny](https://github.com/indutny) - - **Fedor Indutny** <> -* [isaacs](https://github.com/isaacs) - - **Isaac Z. Schlueter** <> -* [joshgav](https://github.com/joshgav) - - **Josh Gavant** <> -* [mhdawson](https://github.com/mhdawson) - - **Michael Dawson** <> (he/him) -* [mmarchini](https://github.com/mmarchini) - - **Mary Marchini** <> (she/her) -* [mscdex](https://github.com/mscdex) - - **Brian White** <> -* [MylesBorins](https://github.com/MylesBorins) - - **Myles Borins** <> (he/him) -* [nebrius](https://github.com/nebrius) - - **Bryan Hughes** <> -* [ofrobots](https://github.com/ofrobots) - - **Ali Ijaz Sheikh** <> (he/him) -* [orangemocha](https://github.com/orangemocha) - - **Alexis Campailla** <> -* [piscisaureus](https://github.com/piscisaureus) - - **Bert Belder** <> -* [rvagg](https://github.com/rvagg) - - **Rod Vagg** <> -* [sam-github](https://github.com/sam-github) - - **Sam Roberts** <> -* [shigeki](https://github.com/shigeki) - - **Shigeki Ohtsu** <> (he/him) -* [thefourtheye](https://github.com/thefourtheye) - - **Sakthipriyan Vairamani** <> (he/him) -* [TimothyGu](https://github.com/TimothyGu) - - **Tiancheng "Timothy" Gu** <> (he/him) -* [trevnorris](https://github.com/trevnorris) - - **Trevor Norris** <> - -
- - - -### Collaborators - -* [abmusse](https://github.com/abmusse) - - **Abdirahim Musse** <> -* [addaleax](https://github.com/addaleax) - - **Anna Henningsen** <> (she/her) -* [Aditi-1400](https://github.com/Aditi-1400) - - **Aditi Singh** <> (she/her) -* [aduh95](https://github.com/aduh95) - - **Antoine du Hamel** <> (he/him) - [Support me](https://github.com/sponsors/aduh95) -* [anonrig](https://github.com/anonrig) - - **Yagiz Nizipli** <> (he/him) - [Support me](https://github.com/sponsors/anonrig) -* [atlowChemi](https://github.com/atlowChemi) - - **Chemi Atlow** <> (he/him) -* [Ayase-252](https://github.com/Ayase-252) - - **Qingyu Deng** <> -* [bengl](https://github.com/bengl) - - **Bryan English** <> (he/him) -* [benjamingr](https://github.com/benjamingr) - - **Benjamin Gruenbaum** <> -* [BethGriggs](https://github.com/BethGriggs) - - **Beth Griggs** <> (she/her) -* [bnb](https://github.com/bnb) - - **Tierney Cyren** <> (they/them) -* [bnoordhuis](https://github.com/bnoordhuis) - - **Ben Noordhuis** <> -* [BridgeAR](https://github.com/BridgeAR) - - **Ruben Bridgewater** <> (he/him) -* [cclauss](https://github.com/cclauss) - - **Christian Clauss** <> (he/him) -* [cjihrig](https://github.com/cjihrig) - - **Colin Ihrig** <> (he/him) -* [codebytere](https://github.com/codebytere) - - **Shelley Vohr** <> (she/her) -* [cola119](https://github.com/cola119) - - **Kohei Ueno** <> (he/him) -* [daeyeon](https://github.com/daeyeon) - - **Daeyeon Jeong** <> (he/him) -* [dario-piotrowicz](https://github.com/dario-piotrowicz) - - **Dario Piotrowicz** <> (he/him) -* [debadree25](https://github.com/debadree25) - - **Debadree Chatterjee** <> (he/him) -* [deokjinkim](https://github.com/deokjinkim) - - **Deokjin Kim** <> (he/him) -* [edsadr](https://github.com/edsadr) - - **Adrian Estrada** <> (he/him) -* [ErickWendel](https://github.com/ErickWendel) - - **Erick Wendel** <> (he/him) -* [Ethan-Arrowood](https://github.com/Ethan-Arrowood) - - **Ethan Arrowood** <> (he/him) -* [fhinkel](https://github.com/fhinkel) - - **Franziska Hinkelmann** <> (she/her) -* [Flarna](https://github.com/Flarna) - - **Gerhard Stöbich** <> (he/they) -* [gabrielschulhof](https://github.com/gabrielschulhof) - - **Gabriel Schulhof** <> -* [geeksilva97](https://github.com/geeksilva97) - - **Edy Silva** <> (he/him) -* [gengjiawen](https://github.com/gengjiawen) - - **Jiawen Geng** <> -* [GeoffreyBooth](https://github.com/GeoffreyBooth) - - **Geoffrey Booth** <> (he/him) -* [gireeshpunathil](https://github.com/gireeshpunathil) - - **Gireesh Punathil** <> (he/him) -* [guybedford](https://github.com/guybedford) - - **Guy Bedford** <> (he/him) -* [H4ad](https://github.com/H4ad) - - **Vinícius Lourenço Claro Cardoso** <> (he/him) -* [HarshithaKP](https://github.com/HarshithaKP) - - **Harshitha K P** <> (she/her) -* [himself65](https://github.com/himself65) - - **Zeyu "Alex" Yang** <> (he/him) -* [hybrist](https://github.com/hybrist) - - **Jan Martin** <> (he/him) -* [IlyasShabi](https://github.com/IlyasShabi) - - **Ilyas Shabi** <> (he/him) -* [islandryu](https://github.com/islandryu) - - **Ryuhei Shima** <> (he/him) -* [jakecastelli](https://github.com/jakecastelli) - - **Jake Yuesong Li** <> (he/him) -* [JakobJingleheimer](https://github.com/JakobJingleheimer) - - **Jacob Smith** <> (he/him) -* [jasnell](https://github.com/jasnell) - - **James M Snell** <> (he/him) -* [jazelly](https://github.com/jazelly) - - **Jason Zhang** <> (he/him) -* [JonasBa](https://github.com/JonasBa) - - **Jonas Badalic** <> (he/him) -* [joyeecheung](https://github.com/joyeecheung) - - **Joyee Cheung** <> (she/her) -* [juanarbol](https://github.com/juanarbol) - - **Juan José Arboleda** <> (he/him) -* [JungMinu](https://github.com/JungMinu) - - **Minwoo Jung** <> (he/him) -* [KhafraDev](https://github.com/KhafraDev) - - **Matthew Aitken** <> (he/him) -* [legendecas](https://github.com/legendecas) - - **Chengzhong Wu** <> (he/him) -* [lemire](https://github.com/lemire) - - **Daniel Lemire** <> -* [LiviaMedeiros](https://github.com/LiviaMedeiros) - - **LiviaMedeiros** <> -* [ljharb](https://github.com/ljharb) - - **Jordan Harband** <> -* [lpinca](https://github.com/lpinca) - - **Luigi Pinca** <> (he/him) -* [lukekarrys](https://github.com/lukekarrys) - - **Luke Karrys** <> (he/him) -* [Lxxyx](https://github.com/Lxxyx) - - **Zijian Liu** <> (he/him) -* [marco-ippolito](https://github.com/marco-ippolito) - - **Marco Ippolito** <> (he/him) - [Support me](https://github.com/sponsors/marco-ippolito) -* [marsonya](https://github.com/marsonya) - - **Akhil Marsonya** <> (he/him) -* [MattiasBuelens](https://github.com/MattiasBuelens) - - **Mattias Buelens** <> (he/him) -* [mcollina](https://github.com/mcollina) - - **Matteo Collina** <> (he/him) - [Support me](https://github.com/sponsors/mcollina) -* [meixg](https://github.com/meixg) - - **Xuguang Mei** <> (he/him) -* [mhdawson](https://github.com/mhdawson) - - **Michael Dawson** <> (he/him) -* [MoLow](https://github.com/MoLow) - - **Moshe Atlow** <> (he/him) -* [MrJithil](https://github.com/MrJithil) - - **Jithil P Ponnan** <> (he/him) -* [ovflowd](https://github.com/ovflowd) - - **Claudio Wunder** <> (he/they) -* [panva](https://github.com/panva) - - **Filip Skokan** <> (he/him) - [Support me](https://github.com/sponsors/panva) -* [pimterry](https://github.com/pimterry) - - **Tim Perry** <> (he/him) -* [pmarchini](https://github.com/pmarchini) - - **Pietro Marchini** <> (he/him) -* [puskin](https://github.com/puskin) - - **Giovanni Bucci** <> (he/him) -* [Qard](https://github.com/Qard) - - **Stephen Belanger** <> (he/him) -* [RafaelGSS](https://github.com/RafaelGSS) - - **Rafael Gonzaga** <> (he/him) - [Support me](https://github.com/sponsors/RafaelGSS) -* [RaisinTen](https://github.com/RaisinTen) - - **Darshan Sen** <> (he/him) - [Support me](https://github.com/sponsors/RaisinTen) -* [Renegade334](https://github.com/Renegade334) - - **René** <> -* [richardlau](https://github.com/richardlau) - - **Richard Lau** <> -* [rluvaton](https://github.com/rluvaton) - - **Raz Luvaton** <> (he/him) -* [ronag](https://github.com/ronag) - - **Robert Nagy** <> -* [ruyadorno](https://github.com/ruyadorno) - - **Ruy Adorno** <> (he/him) -* [santigimeno](https://github.com/santigimeno) - - **Santiago Gimeno** <> -* [ShogunPanda](https://github.com/ShogunPanda) - - **Paolo Insogna** <> (he/him) -* [srl295](https://github.com/srl295) - - **Steven R Loomis** <> -* [StefanStojanovic](https://github.com/StefanStojanovic) - - **Stefan Stojanovic** <> (he/him) -* [sxa](https://github.com/sxa) - - **Stewart X Addison** <> (he/him) -* [targos](https://github.com/targos) - - **Michaël Zasso** <> (he/him) -* [theanarkh](https://github.com/theanarkh) - - **theanarkh** <> (he/him) -* [tniessen](https://github.com/tniessen) - - **Tobias Nießen** <> (he/him) -* [trivikr](https://github.com/trivikr) - - **Trivikram Kamat** <> -* [Trott](https://github.com/Trott) - - **Rich Trott** <> (he/him) -* [UlisesGascon](https://github.com/UlisesGascon) - - **Ulises Gascón** <> (he/him) -* [vmoroz](https://github.com/vmoroz) - - **Vladimir Morozov** <> (he/him) -* [VoltrexKeyva](https://github.com/VoltrexKeyva) - - **Mohammed Keyvanzadeh** <> (he/him) -* [zcbenz](https://github.com/zcbenz) - - **Cheng Zhao** <> (he/him) -* [ZYSzys](https://github.com/ZYSzys) - - **Yongsheng Zhang** <> (he/him) - -
- -Emeriti - - - -### Collaborator emeriti - -* [ak239](https://github.com/ak239) - - **Aleksei Koziatinskii** <> -* [andrasq](https://github.com/andrasq) - - **Andras** <> -* [AndreasMadsen](https://github.com/AndreasMadsen) - - **Andreas Madsen** <> (he/him) -* [AnnaMag](https://github.com/AnnaMag) - - **Anna M. Kedzierska** <> -* [antsmartian](https://github.com/antsmartian) - - **Anto Aravinth** <> (he/him) -* [apapirovski](https://github.com/apapirovski) - - **Anatoli Papirovski** <> (he/him) -* [aqrln](https://github.com/aqrln) - - **Alexey Orlenko** <> (he/him) -* [AshCripps](https://github.com/AshCripps) - - **Ash Cripps** <> -* [bcoe](https://github.com/bcoe) - - **Ben Coe** <> (he/him) -* [bmeck](https://github.com/bmeck) - - **Bradley Farias** <> -* [bmeurer](https://github.com/bmeurer) - - **Benedikt Meurer** <> -* [boneskull](https://github.com/boneskull) - - **Christopher Hiller** <> (he/him) -* [brendanashworth](https://github.com/brendanashworth) - - **Brendan Ashworth** <> -* [bzoz](https://github.com/bzoz) - - **Bartosz Sosnowski** <> -* [calvinmetcalf](https://github.com/calvinmetcalf) - - **Calvin Metcalf** <> -* [ChALkeR](https://github.com/ChALkeR) - - **Сковорода Никита Андреевич** <> (he/him) -* [chrisdickinson](https://github.com/chrisdickinson) - - **Chris Dickinson** <> -* [claudiorodriguez](https://github.com/claudiorodriguez) - - **Claudio Rodriguez** <> -* [danbev](https://github.com/danbev) - - **Daniel Bevenius** <> (he/him) -* [danielleadams](https://github.com/danielleadams) - - **Danielle Adams** <> (she/her) -* [DavidCai1993](https://github.com/DavidCai1993) - - **David Cai** <> (he/him) -* [davisjam](https://github.com/davisjam) - - **Jamie Davis** <> (he/him) -* [devnexen](https://github.com/devnexen) - - **David Carlier** <> -* [devsnek](https://github.com/devsnek) - - **Gus Caplan** <> (they/them) -* [digitalinfinity](https://github.com/digitalinfinity) - - **Hitesh Kanwathirtha** <> (he/him) -* [dmabupt](https://github.com/dmabupt) - - **Xu Meng** <> (he/him) -* [dnlup](https://github.com/dnlup) - - **dnlup** <> -* [eljefedelrodeodeljefe](https://github.com/eljefedelrodeodeljefe) - - **Robert Jefe Lindstaedt** <> -* [estliberitas](https://github.com/estliberitas) - - **Alexander Makarenko** <> -* [eugeneo](https://github.com/eugeneo) - - **Eugene Ostroukhov** <> -* [evanlucas](https://github.com/evanlucas) - - **Evan Lucas** <> (he/him) -* [F3n67u](https://github.com/F3n67u) - - **Feng Yu** <> (he/him) -* [firedfox](https://github.com/firedfox) - - **Daniel Wang** <> -* [Fishrock123](https://github.com/Fishrock123) - - **Jeremiah Senkpiel** <> (he/they) -* [gdams](https://github.com/gdams) - - **George Adams** <> (he/him) -* [geek](https://github.com/geek) - - **Wyatt Preul** <> -* [gibfahn](https://github.com/gibfahn) - - **Gibson Fahnestock** <> (he/him) -* [glentiki](https://github.com/glentiki) - - **Glen Keane** <> (he/him) -* [hashseed](https://github.com/hashseed) - - **Yang Guo** <> (he/him) -* [hiroppy](https://github.com/hiroppy) - - **Yuta Hiroto** <> (he/him) -* [iansu](https://github.com/iansu) - - **Ian Sutherland** <> -* [iarna](https://github.com/iarna) - - **Rebecca Turner** <> -* [imran-iq](https://github.com/imran-iq) - - **Imran Iqbal** <> -* [imyller](https://github.com/imyller) - - **Ilkka Myller** <> -* [indutny](https://github.com/indutny) - - **Fedor Indutny** <> -* [isaacs](https://github.com/isaacs) - - **Isaac Z. Schlueter** <> -* [italoacasas](https://github.com/italoacasas) - - **Italo A. Casas** <> (he/him) -* [JacksonTian](https://github.com/JacksonTian) - - **Jackson Tian** <> -* [jasongin](https://github.com/jasongin) - - **Jason Ginchereau** <> -* [jbergstroem](https://github.com/jbergstroem) - - **Johan Bergström** <> -* [jdalton](https://github.com/jdalton) - - **John-David Dalton** <> -* [jhamhader](https://github.com/jhamhader) - - **Yuval Brik** <> -* [joaocgreis](https://github.com/joaocgreis) - - **João Reis** <> -* [joesepi](https://github.com/joesepi) - - **Joe Sepi** <> (he/him) -* [joshgav](https://github.com/joshgav) - - **Josh Gavant** <> -* [julianduque](https://github.com/julianduque) - - **Julian Duque** <> (he/him) -* [kfarnung](https://github.com/kfarnung) - - **Kyle Farnung** <> (he/him) -* [kunalspathak](https://github.com/kunalspathak) - - **Kunal Pathak** <> -* [kuriyosh](https://github.com/kuriyosh) - - **Yoshiki Kurihara** <> (he/him) -* [kvakil](https://github.com/kvakil) - - **Keyhan Vakil** <> -* [lance](https://github.com/lance) - - **Lance Ball** <> (he/him) -* [Leko](https://github.com/Leko) - - **Shingo Inoue** <> (he/him) -* [Linkgoron](https://github.com/Linkgoron) - - **Nitzan Uziely** <> -* [lucamaraschi](https://github.com/lucamaraschi) - - **Luca Maraschi** <> (he/him) -* [lundibundi](https://github.com/lundibundi) - - **Denys Otrishko** <> (he/him) -* [lxe](https://github.com/lxe) - - **Aleksey Smolenchuk** <> -* [maclover7](https://github.com/maclover7) - - **Jon Moss** <> (he/him) -* [mafintosh](https://github.com/mafintosh) - - **Mathias Buus** <> (he/him) -* [matthewloring](https://github.com/matthewloring) - - **Matthew Loring** <> -* [Mesteery](https://github.com/Mesteery) - - **Mestery** <> (he/him) -* [micnic](https://github.com/micnic) - - **Nicu Micleușanu** <> (he/him) -* [mikeal](https://github.com/mikeal) - - **Mikeal Rogers** <> -* [miladfarca](https://github.com/miladfarca) - - **Milad Fa** <> (he/him) -* [mildsunrise](https://github.com/mildsunrise) - - **Alba Mendez** <> (she/her) -* [misterdjules](https://github.com/misterdjules) - - **Julien Gilli** <> -* [mmarchini](https://github.com/mmarchini) - - **Mary Marchini** <> (she/her) -* [monsanto](https://github.com/monsanto) - - **Christopher Monsanto** <> -* [MoonBall](https://github.com/MoonBall) - - **Chen Gang** <> -* [mscdex](https://github.com/mscdex) - - **Brian White** <> -* [MylesBorins](https://github.com/MylesBorins) - - **Myles Borins** <> (he/him) -* [not-an-aardvark](https://github.com/not-an-aardvark) - - **Teddy Katz** <> (he/him) -* [ofrobots](https://github.com/ofrobots) - - **Ali Ijaz Sheikh** <> (he/him) -* [Olegas](https://github.com/Olegas) - - **Oleg Elifantiev** <> -* [orangemocha](https://github.com/orangemocha) - - **Alexis Campailla** <> -* [othiym23](https://github.com/othiym23) - - **Forrest L Norvell** <> (they/them/themself) -* [oyyd](https://github.com/oyyd) - - **Ouyang Yadong** <> (he/him) -* [petkaantonov](https://github.com/petkaantonov) - - **Petka Antonov** <> -* [phillipj](https://github.com/phillipj) - - **Phillip Johnsen** <> -* [piscisaureus](https://github.com/piscisaureus) - - **Bert Belder** <> -* [pmq20](https://github.com/pmq20) - - **Minqi Pan** <> -* [PoojaDurgad](https://github.com/PoojaDurgad) - - **Pooja D P** <> (she/her) -* [princejwesley](https://github.com/princejwesley) - - **Prince John Wesley** <> -* [psmarshall](https://github.com/psmarshall) - - **Peter Marshall** <> (he/him) -* [puzpuzpuz](https://github.com/puzpuzpuz) - - **Andrey Pechkurov** <> (he/him) -* [refack](https://github.com/refack) - - **Refael Ackermann (רפאל פלחי)** <> (he/him/הוא/אתה) -* [rexagod](https://github.com/rexagod) - - **Pranshu Srivastava** <> (he/him) -* [rickyes](https://github.com/rickyes) - - **Ricky Zhou** <<0x19951125@gmail.com>> (he/him) -* [rlidwka](https://github.com/rlidwka) - - **Alex Kocharin** <> -* [rmg](https://github.com/rmg) - - **Ryan Graham** <> -* [robertkowalski](https://github.com/robertkowalski) - - **Robert Kowalski** <> -* [romankl](https://github.com/romankl) - - **Roman Klauke** <> -* [ronkorving](https://github.com/ronkorving) - - **Ron Korving** <> -* [RReverser](https://github.com/RReverser) - - **Ingvar Stepanyan** <> -* [rubys](https://github.com/rubys) - - **Sam Ruby** <> -* [rvagg](https://github.com/rvagg) - - **Rod Vagg** <> -* [ryzokuken](https://github.com/ryzokuken) - - **Ujjwal Sharma** <> (he/him) -* [saghul](https://github.com/saghul) - - **Saúl Ibarra Corretgé** <> -* [sam-github](https://github.com/sam-github) - - **Sam Roberts** <> -* [sebdeckers](https://github.com/sebdeckers) - - **Sebastiaan Deckers** <> -* [seishun](https://github.com/seishun) - - **Nikolai Vavilov** <> -* [shigeki](https://github.com/shigeki) - - **Shigeki Ohtsu** <> (he/him) -* [shisama](https://github.com/shisama) - - **Masashi Hirano** <> (he/him) -* [silverwind](https://github.com/silverwind) - - **Roman Reiss** <> -* [starkwang](https://github.com/starkwang) - - **Weijia Wang** <> -* [stefanmb](https://github.com/stefanmb) - - **Stefan Budeanu** <> -* [tellnes](https://github.com/tellnes) - - **Christian Tellnes** <> -* [thefourtheye](https://github.com/thefourtheye) - - **Sakthipriyan Vairamani** <> (he/him) -* [thlorenz](https://github.com/thlorenz) - - **Thorsten Lorenz** <> -* [TimothyGu](https://github.com/TimothyGu) - - **Tiancheng "Timothy" Gu** <> (he/him) -* [trevnorris](https://github.com/trevnorris) - - **Trevor Norris** <> -* [tunniclm](https://github.com/tunniclm) - - **Mike Tunnicliffe** <> -* [vdeturckheim](https://github.com/vdeturckheim) - - **Vladimir de Turckheim** <> (he/him) -* [vkurchatkin](https://github.com/vkurchatkin) - - **Vladimir Kurchatkin** <> -* [vsemozhetbyt](https://github.com/vsemozhetbyt) - - **Vse Mozhet Byt** <> (he/him) -* [watilde](https://github.com/watilde) - - **Daijiro Wachi** <> (he/him) -* [watson](https://github.com/watson) - - **Thomas Watson** <> -* [whitlockjc](https://github.com/whitlockjc) - - **Jeremy Whitlock** <> -* [XadillaX](https://github.com/XadillaX) - - **Khaidi Chu** <> (he/him) -* [yashLadha](https://github.com/yashLadha) - - **Yash Ladha** <> (he/him) -* [yhwang](https://github.com/yhwang) - - **Yihong Wang** <> -* [yorkie](https://github.com/yorkie) - - **Yorkie Liu** <> -* [yosuke-furukawa](https://github.com/yosuke-furukawa) - - **Yosuke Furukawa** <> - -
- - - -Collaborators follow the [Collaborator Guide](./doc/contributing/collaborator-guide.md) in -maintaining the Node.js project. - -### Triagers - -* [1ilsang](https://github.com/1ilsang) - - **Sangchul Lee** <<1ilsang.dev@gmail.com>> (he/him) -* [atlowChemi](https://github.com/atlowChemi) - - **Chemi Atlow** <> (he/him) -* [Ayase-252](https://github.com/Ayase-252) - - **Qingyu Deng** <> -* [bjohansebas](https://github.com/bjohansebas) - - **Sebastian Beltran** <> -* [bmuenzenmeyer](https://github.com/bmuenzenmeyer) - - **Brian Muenzenmeyer** <> (he/him) -* [CanadaHonk](https://github.com/CanadaHonk) - - **Oliver Medhurst** <> (they/them) -* [daeyeon](https://github.com/daeyeon) - - **Daeyeon Jeong** <> (he/him) -* [gireeshpunathil](https://github.com/gireeshpunathil) - - **Gireesh Punathil** <> (he/him) -* [gurgunday](https://github.com/gurgunday) - - **Gürgün Dayıoğlu** <> -* [haramj](https://github.com/haramj) - - **Haram Jeong** <> -* [HBSPS](https://github.com/HBSPS) - - **Wiyeong Seo** <> -* [iam-frankqiu](https://github.com/iam-frankqiu) - - **Frank Qiu** <> (he/him) -* [KevinEady](https://github.com/KevinEady) - - **Kevin Eady** <> (he/him) -* [marsonya](https://github.com/marsonya) - - **Akhil Marsonya** <> (he/him) -* [meixg](https://github.com/meixg) - - **Xuguang Mei** <> (he/him) -* [milesguicent](https://github.com/milesguicent) - - **Miles Guicent** <> (he/him) -* [preveen-stack](https://github.com/preveen-stack) - - **Preveen Padmanabhan** <> (he/him) -* [RaisinTen](https://github.com/RaisinTen) - - **Darshan Sen** <> (he/him) -* [VoltrexKeyva](https://github.com/VoltrexKeyva) - - **Mohammed Keyvanzadeh** <> (he/him) - -Triagers follow the [Triage Guide](./doc/contributing/issues.md#triaging-a-bug-report) when -responding to new issues. - -### Release keys - -Primary GPG keys for Node.js Releasers (some Releasers sign with subkeys): - -* **Antoine du Hamel** <> - `5BE8A3F6C8A5C01D106C0AD820B1A390B168D356` -* **Juan José Arboleda** <> - `DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7` -* **Marco Ippolito** <> - `CC68F5A3106FF448322E48ED27F5E38D5B0A215F` -* **Michaël Zasso** <> - `8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600` -* **Rafael Gonzaga** <> - `890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4` -* **Richard Lau** <> - `C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C` -* **Ruy Adorno** <> - `108F52B48DB57BB0CC439B2997B01419BD92F80A` -* **Ulises Gascón** <> - `A363A499291CBBC940DD62E41F10027AF002F8B0` - -You can use the keyring the project maintains at -. -Alternatively, you can import them from a public key server. Have in mind that -the project cannot guarantee the availability of the server nor the keys on -that server. - -```bash -gpg --keyserver hkps://keys.openpgp.org --recv-keys 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 # Antoine du Hamel -gpg --keyserver hkps://keys.openpgp.org --recv-keys DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 # Juan José Arboleda -gpg --keyserver hkps://keys.openpgp.org --recv-keys CC68F5A3106FF448322E48ED27F5E38D5B0A215F # Marco Ippolito -gpg --keyserver hkps://keys.openpgp.org --recv-keys 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 # Michaël Zasso -gpg --keyserver hkps://keys.openpgp.org --recv-keys 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 # Rafael Gonzaga -gpg --keyserver hkps://keys.openpgp.org --recv-keys C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C # Richard Lau -gpg --keyserver hkps://keys.openpgp.org --recv-keys 108F52B48DB57BB0CC439B2997B01419BD92F80A # Ruy Adorno -gpg --keyserver hkps://keys.openpgp.org --recv-keys A363A499291CBBC940DD62E41F10027AF002F8B0 # Ulises Gascón -``` - -See [Verifying binaries](#verifying-binaries) for how to use these keys to -verify a downloaded file. - -
- -Other keys used to sign some previous releases - -* **Antoine du Hamel** <> - `C0D6248439F1D5604AAFFB4021D900FFDB233756` -* **Beth Griggs** <> - `4ED778F539E3634C779C87C6D7062848A1AB005C` -* **Bryan English** <> - `141F07595B7B3FFE74309A937405533BE57C7D57` -* **Chris Dickinson** <> - `9554F04D7259F04124DE6B476D5A82AC7E37093B` -* **Colin Ihrig** <> - `94AE36675C464D64BAFA68DD7434390BDBE9B9C5` -* **Danielle Adams** <> - `1C050899334244A8AF75E53792EF661D867B9DFA` - `74F12602B6F1C4E913FAA37AD3A89613643B6201` -* **Evan Lucas** <> - `B9AE9905FFD7803F25714661B63B535A4C206CA9` -* **Gibson Fahnestock** <> - `77984A986EBC2AA786BC0F66B01FBB92821C587A` -* **Isaac Z. Schlueter** <> - `93C7E9E91B49E432C2F75674B0A78B0A6C481CF6` -* **Italo A. Casas** <> - `56730D5401028683275BD23C23EFEFE93C4CFFFE` -* **James M Snell** <> - `71DCFD284A79C3B38668286BC97EC7A07EDE3FC1` -* **Jeremiah Senkpiel** <> - `FD3A5288F042B6850C66B31F09FE44734EB7990E` -* **Juan José Arboleda** <> - `61FC681DFB92A079F1685E77973F295594EC4689` -* **Julien Gilli** <> - `114F43EE0176B71C7BC219DD50A3051F888C628D` -* **Myles Borins** <> - `C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8` -* **Rod Vagg** <> - `DD8F2338BAE7501E3DD5AC78C273792F7D83545D` -* **Ruben Bridgewater** <> - `A48C2BEE680E841632CD4E44F07496B3EB3C1762` -* **Shelley Vohr** <> - `B9E2F5981AA6E0CD28160D9FF13993A75599653C` -* **Timothy J Fontaine** <> - `7937DFD2AB06298B2293C3187D33FF9D0246406D` - -The project maintains a keyring able to verify all past releases of Node.js at -. - -
- -### Security release stewards - -When possible, the commitment to take slots in the -security release steward rotation is made by companies in order -to ensure individuals who act as security stewards have the -support and recognition from their employer to be able to -prioritize security releases. Security release stewards manage security -releases on a rotation basis as outlined in the -[security release process](./doc/contributing/security-release-process.md). - -* [Datadog](https://www.datadoghq.com/) - * [bengl](https://github.com/bengl) - - **Bryan English** <> (he/him) -* [HeroDevs](https://www.herodevs.com/) - * [marco-ippolito](https://github.com/marco-ippolito) - - **Marco Ippolito** <> (he/him) -* [NodeSource](https://nodesource.com/) - * [juanarbol](https://github.com/juanarbol) - - **Juan José Arboleda** <> (he/him) - * [RafaelGSS](https://github.com/RafaelGSS) - - **Rafael Gonzaga** <> (he/him) -* [Platformatic](https://platformatic.dev/) - * [mcollina](https://github.com/mcollina) - - **Matteo Collina** <> (he/him) -* [Red Hat](https://redhat.com) / [IBM](https://ibm.com) - * [joesepi](https://github.com/joesepi) - - **Joe Sepi** <> (he/him) - * [mhdawson](https://github.com/mhdawson) - - **Michael Dawson** <> (he/him) +Team structure and governance details are documented in [GOVERNANCE.md](./GOVERNANCE.md). +Lists of TSC members, collaborators, triagers, and release keys are maintained in this repository. ## License -Node.js is licensed under the [MIT License](https://opensource.org/licenses/MIT). - -This project also depends on external libraries that may use different open-source -licenses. For a complete list of included licenses, please see the -[LICENSE](https://github.com/nodejs/node/blob/main/LICENSE) file. - -If you are contributing documentation or source changes, please ensure your -additions comply with the project’s license guidelines. +Node.js is licensed under the MIT License. +See the full [LICENSE](https://github.com/nodejs/node/blob/main/LICENSE) for third-party license information. -[Code of Conduct]: https://github.com/nodejs/admin/blob/HEAD/CODE_OF_CONDUCT.md -[Contributing to the project]: CONTRIBUTING.md -[Node.js website]: https://nodejs.org/ -[OpenJS Foundation]: https://openjsf.org/ -[Strategic initiatives]: doc/contributing/strategic-initiatives.md +[Code of Conduct]: https://github.com/nodejs/admin/blob/HEAD/CODE_OF_CONDUCT.md +[Node.js website]: https://nodejs.org/ +[OpenJS Foundation]: https://openjsf.org/ +[Contributing to the project]: CONTRIBUTING.md +[Working Groups]: https://github.com/nodejs/TSC/blob/HEAD/WORKING_GROUPS.md +[Strategic initiatives]: doc/contributing/strategic-initiatives.md [Technical values and prioritization]: doc/contributing/technical-values.md -[Working Groups]: https://github.com/nodejs/TSC/blob/HEAD/WORKING_GROUPS.md