Skip to content

Commit e3266ab

Browse files
committed
doc: reorganize README.md
The README previously mixes information of different levels of details e.g. some are just links, some include detailed instructions and commands. This reorganizes README.md to make it more like a map of links. The release information are moved into a dedicated document. Only the releaser list remains in the README.
1 parent 3c8c1ef commit e3266ab

File tree

2 files changed

+191
-174
lines changed

2 files changed

+191
-174
lines changed

README.md

Lines changed: 35 additions & 174 deletions
Original file line numberDiff line numberDiff line change
@@ -18,113 +18,48 @@ that discourage, exhaust, or otherwise negatively affect other participants.
1818
## Table of contents
1919

2020
* [Support](#support)
21-
* [Release types](#release-types)
22-
* [Download](#download)
23-
* [Current and LTS releases](#current-and-lts-releases)
24-
* [Nightly releases](#nightly-releases)
25-
* [API documentation](#api-documentation)
26-
* [Verifying binaries](#verifying-binaries)
21+
* [Releases](#releases)
22+
* [Download](#download)
23+
* [Documentation](#documentation)
2724
* [Building Node.js](#building-nodejs)
2825
* [Security](#security)
2926
* [Contributing to Node.js](#contributing-to-nodejs)
3027
* [Current project team members](#current-project-team-members)
3128
* [TSC (Technical Steering Committee)](#tsc-technical-steering-committee)
3229
* [Collaborators](#collaborators)
3330
* [Triagers](#triagers)
34-
* [Release keys](#release-keys)
31+
* [Releasers](#releasers)
32+
* [Security release stewards](#security-release-stewards)
3533
* [License](#license)
3634

3735
## Support
3836

39-
Looking for help? Check out the
40-
[instructions for getting support](.github/SUPPORT.md).
37+
Looking for help? Check out the [instructions for getting support](.github/SUPPORT.md).
4138

42-
## Release types
39+
## Releases
4340

44-
* **Current**: Under active development. Code for the Current release is in the
45-
branch for its major version number (for example,
46-
[v22.x](https://github.com/nodejs/node/tree/v22.x)). Node.js releases a new
47-
major version every 6 months, allowing for breaking changes. This happens in
48-
April and October every year. Releases appearing each October have a support
49-
life of 8 months. Releases appearing each April convert to LTS (see below)
50-
each October.
51-
* **LTS**: Releases that receive Long Term Support, with a focus on stability
52-
and security. Every even-numbered major version will become an LTS release.
53-
LTS releases receive 12 months of _Active LTS_ support and a further 18 months
54-
of _Maintenance_. LTS release lines have alphabetically-ordered code names,
55-
beginning with v4 Argon. There are no breaking changes or feature additions,
56-
except in some special circumstances.
57-
* **Nightly**: Code from the Current branch built every 24-hours when there are
58-
changes. Use with caution.
41+
See [Node.js Releases](./RELEASE.md) and the
42+
[Release Working Group README](https://github.com/nodejs/Release#readme) for more information.
5943

60-
Current and LTS releases follow [semantic versioning](https://semver.org). A
61-
member of the Release Team [signs](#release-keys) each Current and LTS release.
62-
For more information, see the
63-
[Release README](https://github.com/nodejs/Release#readme).
44+
## Download
6445

65-
### Download
46+
See [download and installation instructions](https://nodejs.org/en/download/).
6647

67-
Binaries, installers, and source tarballs are available at
68-
<https://nodejs.org/en/download/>.
48+
## Documentation
6949

70-
#### Current and LTS releases
71-
72-
<https://nodejs.org/download/release/>
73-
74-
The [latest](https://nodejs.org/download/release/latest/) directory is an
75-
alias for the latest Current release. The latest-_codename_ directory is an
76-
alias for the latest release from an LTS line. For example, the
77-
[latest-hydrogen](https://nodejs.org/download/release/latest-hydrogen/)
78-
directory contains the latest Hydrogen (Node.js 18) release.
79-
80-
#### Nightly releases
81-
82-
<https://nodejs.org/download/nightly/>
83-
84-
Each directory and filename includes the version (e.g., `v22.0.0`),
85-
followed by the UTC date (e.g., `20240424` for April 24, 2024),
86-
and the short commit SHA of the HEAD of the release (e.g., `ddd0a9e494`).
87-
For instance, a full directory name might look like `v22.0.0-nightly20240424ddd0a9e494`.
88-
89-
#### API documentation
90-
91-
Documentation for the latest Current release is at <https://nodejs.org/api/>.
92-
Version-specific documentation is available in each release directory in the
93-
_docs_ subdirectory. Version-specific documentation is also at
94-
<https://nodejs.org/download/docs/>.
95-
96-
### Verifying binaries
97-
98-
Download directories contain a `SHASUMS256.txt.asc` file with SHA checksums for the
99-
files and the releaser PGP signature.
100-
101-
You can get a trusted keyring from nodejs/release-keys, e.g. using `curl`:
102-
103-
```bash
104-
curl -fsLo "/path/to/nodejs-keyring.kbx" "https://github.com/nodejs/release-keys/raw/HEAD/gpg/pubring.kbx"
105-
```
106-
107-
Alternatively, you can import the releaser keys in your default keyring, see
108-
[Release keys](#release-keys) for commands to how to do that.
109-
110-
Then, you can verify the files you've downloaded locally
111-
(if you're using your default keyring, pass `--keyring="${GNUPGHOME:-~/.gnupg}/pubring.kbx"`):
112-
113-
```bash
114-
curl -fsO "https://nodejs.org/dist/${VERSION}/SHASUMS256.txt.asc" \
115-
&& gpgv --keyring="/path/to/nodejs-keyring.kbx" --output SHASUMS256.txt < SHASUMS256.txt.asc \
116-
&& shasum --check SHASUMS256.txt --ignore-missing
117-
```
50+
* [Learn how to use Node.js](https://nodejs.org/en/learn/getting-started/introduction-to-nodejs)
51+
* [API documentation for the latest Current release](https://nodejs.org/api/).
52+
* [Version-specific API documentation index](https://nodejs.org/download/docs/).
53+
* [Source code of the API documentation](./doc/api/).
11854

11955
## Building Node.js
12056

121-
See [BUILDING.md](BUILDING.md) for instructions on how to build Node.js from
122-
source and a list of supported platforms.
57+
* [Building Node.js from source](./BUILDING.md#building-nodejs-on-supported-platforms).
58+
* [List of supported platforms](./BUILDING.md#supported-platforms).
12359

12460
## Security
12561

126-
For information on reporting security vulnerabilities in Node.js, see
127-
[SECURITY.md](./SECURITY.md).
62+
See [information on reporting security vulnerabilities in Node.js](./SECURITY.md).
12863

12964
## Contributing to Node.js
13065

@@ -777,95 +712,24 @@ maintaining the Node.js project.
777712
Triagers follow the [Triage Guide](./doc/contributing/issues.md#triaging-a-bug-report) when
778713
responding to new issues.
779714

780-
### Release keys
781-
782-
Primary GPG keys for Node.js Releasers (some Releasers sign with subkeys):
783-
784-
* **Antoine du Hamel** <<[email protected]>>
785-
`5BE8A3F6C8A5C01D106C0AD820B1A390B168D356`
786-
* **Juan José Arboleda** <<[email protected]>>
787-
`DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7`
788-
* **Marco Ippolito** <<[email protected]>>
789-
`CC68F5A3106FF448322E48ED27F5E38D5B0A215F`
790-
* **Michaël Zasso** <<[email protected]>>
791-
`8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600`
792-
* **Rafael Gonzaga** <<[email protected]>>
793-
`890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4`
794-
* **Richard Lau** <<[email protected]>>
795-
`C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C`
796-
* **Ruy Adorno** <<[email protected]>>
797-
`108F52B48DB57BB0CC439B2997B01419BD92F80A`
798-
* **Ulises Gascón** <<[email protected]>>
799-
`A363A499291CBBC940DD62E41F10027AF002F8B0`
800-
801-
You can use the keyring the project maintains at
802-
<https://github.com/nodejs/release-keys/raw/refs/heads/main/gpg-only-active-keys/pubring.kbx>.
803-
Alternatively, you can import them from a public key server. Have in mind that
804-
the project cannot guarantee the availability of the server nor the keys on
805-
that server.
806-
807-
```bash
808-
gpg --keyserver hkps://keys.openpgp.org --recv-keys 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 # Antoine du Hamel
809-
gpg --keyserver hkps://keys.openpgp.org --recv-keys DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 # Juan José Arboleda
810-
gpg --keyserver hkps://keys.openpgp.org --recv-keys CC68F5A3106FF448322E48ED27F5E38D5B0A215F # Marco Ippolito
811-
gpg --keyserver hkps://keys.openpgp.org --recv-keys 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 # Michaël Zasso
812-
gpg --keyserver hkps://keys.openpgp.org --recv-keys 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 # Rafael Gonzaga
813-
gpg --keyserver hkps://keys.openpgp.org --recv-keys C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C # Richard Lau
814-
gpg --keyserver hkps://keys.openpgp.org --recv-keys 108F52B48DB57BB0CC439B2997B01419BD92F80A # Ruy Adorno
815-
gpg --keyserver hkps://keys.openpgp.org --recv-keys A363A499291CBBC940DD62E41F10027AF002F8B0 # Ulises Gascón
816-
```
817-
818-
See [Verifying binaries](#verifying-binaries) for how to use these keys to
819-
verify a downloaded file.
820-
821-
<details>
715+
### Releasers
822716

823-
<summary>Other keys used to sign some previous releases</summary>
824-
825-
* **Antoine du Hamel** <<[email protected]>>
826-
`C0D6248439F1D5604AAFFB4021D900FFDB233756`
827-
* **Beth Griggs** <<[email protected]>>
828-
`4ED778F539E3634C779C87C6D7062848A1AB005C`
829-
* **Bryan English** <<[email protected]>>
830-
`141F07595B7B3FFE74309A937405533BE57C7D57`
831-
* **Chris Dickinson** <<[email protected]>>
832-
`9554F04D7259F04124DE6B476D5A82AC7E37093B`
833-
* **Colin Ihrig** <<[email protected]>>
834-
`94AE36675C464D64BAFA68DD7434390BDBE9B9C5`
835-
* **Danielle Adams** <<[email protected]>>
836-
`1C050899334244A8AF75E53792EF661D867B9DFA`
837-
`74F12602B6F1C4E913FAA37AD3A89613643B6201`
838-
* **Evan Lucas** <<[email protected]>>
839-
`B9AE9905FFD7803F25714661B63B535A4C206CA9`
840-
* **Gibson Fahnestock** <<[email protected]>>
841-
`77984A986EBC2AA786BC0F66B01FBB92821C587A`
842-
* **Isaac Z. Schlueter** <<[email protected]>>
843-
`93C7E9E91B49E432C2F75674B0A78B0A6C481CF6`
844-
* **Italo A. Casas** <<[email protected]>>
845-
`56730D5401028683275BD23C23EFEFE93C4CFFFE`
846-
* **James M Snell** <<[email protected]>>
847-
`71DCFD284A79C3B38668286BC97EC7A07EDE3FC1`
848-
* **Jeremiah Senkpiel** <<[email protected]>>
849-
`FD3A5288F042B6850C66B31F09FE44734EB7990E`
850-
* **Juan José Arboleda** <<[email protected]>>
851-
`61FC681DFB92A079F1685E77973F295594EC4689`
852-
* **Julien Gilli** <<[email protected]>>
853-
`114F43EE0176B71C7BC219DD50A3051F888C628D`
854-
* **Myles Borins** <<[email protected]>>
855-
`C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8`
856-
* **Rod Vagg** <<[email protected]>>
857-
`DD8F2338BAE7501E3DD5AC78C273792F7D83545D`
858-
* **Ruben Bridgewater** <<[email protected]>>
859-
`A48C2BEE680E841632CD4E44F07496B3EB3C1762`
860-
* **Shelley Vohr** <<[email protected]>>
861-
`B9E2F5981AA6E0CD28160D9FF13993A75599653C`
862-
* **Timothy J Fontaine** <<[email protected]>>
863-
`7937DFD2AB06298B2293C3187D33FF9D0246406D`
864-
865-
The project maintains a keyring able to verify all past releases of Node.js at
866-
<https://github.com/nodejs/release-keys/raw/refs/heads/main/gpg/pubring.kbx>.
717+
<!-- This might be redundant here, the one in Release#readme is properly sync-ed with ncu-team-sync -->
867718

868-
</details>
719+
* [juanarbol](https://github.com/juanarbol) -
720+
**Juan José Arboleda** <<[email protected]>> (he/him)
721+
* [marco-ippolito](https://github.com/marco-ippolito) -
722+
**Marco Ippolito** <<[email protected]>> (he/him)
723+
* [RafaelGSS](https://github.com/RafaelGSS) -
724+
**Rafael Gonzaga** <<[email protected]>> (he/him)
725+
* [richardlau](https://github.com/richardlau) -
726+
**Richard Lau** <<[email protected]>>
727+
* [ruyadorno](https://github.com/ruyadorno) -
728+
**Ruy Adorno** <<[email protected]>> (he/him)
729+
* [targos](https://github.com/targos) -
730+
**Michaël Zasso** <<[email protected]>> (he/him)
731+
* [UlisesGascon](https://github.com/UlisesGascon) -
732+
**Ulises Gascón** <<[email protected]>> (he/him)
869733

870734
### Security release stewards
871735

@@ -909,6 +773,3 @@ license text.
909773
[Contributing to the project]: CONTRIBUTING.md
910774
[Node.js website]: https://nodejs.org/
911775
[OpenJS Foundation]: https://openjsf.org/
912-
[Strategic initiatives]: doc/contributing/strategic-initiatives.md
913-
[Technical values and prioritization]: doc/contributing/technical-values.md
914-
[Working Groups]: https://github.com/nodejs/TSC/blob/HEAD/WORKING_GROUPS.md

0 commit comments

Comments
 (0)