Node.js 21

Node.js 21 21.7.3

Run JavaScript Everywhere

Download for Windows

About Node.js 21

Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.

What's new in 21.7.3

This is a security release.

Notable Changes

  • CVE-2024-27980 - Command injection via args parameter of child_process.spawn without shell option enabled on Windows

Commits

  • [9095c914ed] - src: disallow direct .bat and .cmd file spawning (Ben Noordhuis) nodejs-private/node-private#562

Full release notes »

Technical details

PublisherNode.js Foundation
AuthorOpenJS Foundation
Version21.7.3
Release date2024-04-10
LicenseMIT
Installer typewix
Architecturex64, x86, arm64
Package IDOpenJS.NodeJS.21
Admin rightsRequired
Install scopeAll users

Install Node.js 21 from the command line

Install with Windows Package Manager
winget install --id=OpenJS.NodeJS.21 -e
Update to the latest version
winget upgrade --id=OpenJS.NodeJS.21 -e
Uninstall
winget uninstall --id=OpenJS.NodeJS.21 -e
Silent install with the offline installer
msiexec /i "node-v21.7.3-x64.msi" /quiet /norestart
Uninstall the MSI package
msiexec /x {22E18847-C43D-44BA-8A7E-715DCB7DBE22} /quiet

Node.js 21 adds these commands to the command line: corepack, node, npm, npx.

codingcross-platformdevelopdevelopmentenvironmentjavascriptjsnodenpmprogrammingruntimev8

File types supported by Node.js 21

Node.js 21 can open or be associated with 3 file types:

.cjs.js.mjs

Node.js 21 version history

21.7.2 Apr 3, 2024

This is a security release.
Notable changes
- CVE-2024-27983 - Assertion failed in nodehttp2Http2Session::~Http2Session() leads to HTTP/2 server crash- (High)
- CVE-2024-27982 - HTTP Request Smuggling via Content Length Obfuscation- (Medium)
- llhttp version 9.2.1
- undici version 6.11.1
Commits
- [3dfc10c851] - deps: update undici to 6.11.1 (Node.js GitHub Bot) #52328
- [aceea1c5e7] - deps: update undici to 6.10.2 (Node.js GitHub Bot) #52227
- [5f0f96b275] - deps: update llhttp to 9.2.0 (Node.js GitHub Bot) #51719
- [1a65e98e22] - http: do not allow OBS fold in headers by default (Paolo Insogna) nodejs-private/node-private#556
- [3bd39fb474] - src: ensure to close stream when destroying session (Anna Henningsen) nodejs-private/node-private#561

21.7.1 Mar 8, 2024

Notable Changes
This release reverts #51389, which landed in Node.js 21.7.0. It is a documented feature that t.after() hooks are run even if a test has no subtests. The hook can be used to clean up the test itself.
Commits
- [0dfe810ac7] - benchmark: update iterations of benchmark/async_hooks/async-local- (Lei Shi) #51420
- [625c9e0ac9] - benchmark: update iterations of benchmark/domain/domain-fn-args.js (Lei Shi) #51408
- [7ff3551bad] - build: fix arm64 host cross-compilation in GN (Cheng Zhao) #51903
- [fd86ea8b71] - Revert "build: workaround for node-core-utils" (Richard Lau) #51975
- [23c32ab3a7] - build: respect the NODE env variable in Makefile (Antoine du Hamel) #51743
- [9617adc064] - Revert "build: fix warning in cares under GN build" (Luigi Pinca) #51865
- [5864534095] - deps: update nghttp2 to 1.60.0 (Node.js GitHub Bot) #51948
- [fcf235d623] - doc: add policy for distribution (Geoffrey Booth) #51918
- [87d2acc8b1] - doc: fix actual result of example is different in events (Deokjin Kim) #51925
- [5908c121c6] - doc: clarify Corepack threat model (Antoine du Hamel) #51917
- [20e0ba3b94] - doc,module: clarify hook chain execution sequence (Jacob Smith) #51884
- [4d997971ac] - lib: make sure close net server (theanarkh) #51929
- [fcc6d54aa3] - lib: return directly if udp socket close before lookup (theanarkh) #51914
- [10aaabd158] - meta: bump github/codeql-action from 3.23.2 to 3.24.6 (dependabot[bot]) #51942 …

21.7.0 Mar 6, 2024

Other versions

  • 21.6.2
  • 21.6.1
  • 21.6.0
  • 21.4.0
  • 21.3.0
  • 21.2.0

Frequently asked questions

Is Node.js 21 free?

Yes. Node.js 21 is free and open-source software released under the MIT license.

What is the latest version of Node.js 21?

The latest version is 21.7.3, released on Apr 10, 2024.

Is it safe to download Node.js 21?

The download button links to the official installer published on nodejs.org, the same file Windows Package Manager installs. You can verify the downloaded file by comparing its SHA-256 checksum with de33d68e92e8948b96515bafee206d0b5c1f5440eb2e07aa15d6ce2f6493f53b.

Which Windows versions does Node.js 21 support?

Node.js 21 runs on Windows and is available for 64-bit (x64), 32-bit (x86), ARM64 systems.

How do I install Node.js 21 silently?

Run the offline installer with msiexec /i "node-v21.7.3-x64.msi" /quiet /norestart, or install it with Windows Package Manager: winget install --id=OpenJS.NodeJS.21 -e --silent.

How do I uninstall Node.js 21?

Open Settings › Apps › Installed apps, find Node.js 21 and select Uninstall. From the command line, run winget uninstall --id=OpenJS.NodeJS.21 -e.

What file types can Node.js 21 open?

Node.js 21 supports 3 file types, including .cjs, .js, .mjs.