Node.js 15

Node.js 15 15.14.0

Run JavaScript Everywhere

Download for Windows

About Node.js 15

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 15.14.0

This is a security release.
Notable Changes
Vulnerabilties Fixed:
- CVE-2021-3450: OpenSSL - CA certificate check bypass with X509_V_FLAG_X509_STRICT (High)
- This is a vulnerability in OpenSSL which may be exploited through Node.js. You can read more about it in https://www.openssl.org/news/secadv/20210325.txt
- Impacts:
- All versions of the 15.x, 14.x, 12.x and 10.x releases lines
- CVE-2021-3449: OpenSSL - NULL pointer deref in signature_algorithms processing (High)
- This is a vulnerability in OpenSSL which may be exploited through Node.js. You can read more about it in https://www.openssl.org/news/secadv/20210325.txt
- Impacts:
- All versions of the 15.x, 14.x, 12.x and 10.x releases lines
- CVE-2020-7774: npm upgrade - Update y18n to fix Prototype-Pollution (High)
- This is a vulnerability in the y18n npm module which may be exploited by prototype pollution. You can read more about it in https://github.com/advisories/GHSA-c4w7-xm78-47vh
- Impacts:
- All versions of the 14.x, 12.x and 10.x releases lines
Other Notable Changes:
- [b6f4901221] - (SEMVER-MINOR) fs: add support for async iterators to fsPromises.writeFile (HiroyukiYagihashi) #37490
- [0709cbb7fe] - (SEMVER-MINOR) net: allow net.BlockList to use net.SocketAddress objects (James M Snell) #37917
- [daa8a7bbcf] - (SEMVER-MINOR) net: add SocketAddress class (James M Snell) #37917
- [a4169ce519] - (SEMVER-MINOR) net: make net.BlockList cloneable (James M Snell) #37917
- [669b81c68b] - (SEMVER-MINOR) net,tls: add abort signal support to connect (Nitzan Uziely) #37735
- [a1123f0a29] - (SEMVER-MINOR) readline: add AbortSignal support to interface (Nitzan Uziely) #37932
Commits
- [ac69b95e47] - crypto: use correct webcrypto RSASSA-PKCS1-v1_5 algorithm name (Filip Skokan) #38029
- [960c6be229] - crypto: add buffering to randomInt (Tobias Nießen) #35110
- [4ef102d34e] - deps: update to [email protected] (Guy Bedford) #37992
- [f0e77149a4] - deps: update archs files for OpenSSL-1.1.1k (Hassaan Pasha) #37916
- [bbdcdad2c6] - deps: upgrade openssl sources to 1.1.1k+quic (Hassaan Pasha) #37916
- [913ec56798] - deps: cjs-module-lexer: cherry-pick 22093e765f (pezhmanparsaee) #37895
- [afc6ab2122] - doc: fix asyncLocalStorage.run() description (Darkripper214) #38023
- [b40d35d649] - doc: document how to unref stdin when using readline.Interface (Anu Pasumarthy) #38019
- [ce14080473] - doc: move psmarshall to collaborators emeriti (Peter Marshall) #37994 …

Full release notes »

Technical details

PublisherNode.js Foundation
AuthorOpenJS Foundation
Version15.14.0
Release date2021-04-06
LicenseMIT
Installer typewix, zip
Architecturex86, x64
Package IDOpenJS.NodeJS.15
Admin rightsRequired
Install scopeAll users

Install Node.js 15 from the command line

Install with Windows Package Manager
winget install --id=OpenJS.NodeJS.15 -e
Update to the latest version
winget upgrade --id=OpenJS.NodeJS.15 -e
Uninstall
winget uninstall --id=OpenJS.NodeJS.15 -e
Silent install with the offline installer
msiexec /i "node-v15.14.0-x64.msi" /quiet /norestart
Uninstall the MSI package
msiexec /x {C6D70F34-C254-4D55-B4A0-55F921939297} /quiet

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

codingcross-platformdevelopdevelopmentenvironmentjavascriptjsnodenpmprogrammingruntimev8

File types supported by Node.js 15

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

.cjs.js.mjs

Node.js 15 version history

15.13.0 Mar 31, 2021

Notable Changes
- buffer:
- implement btoa and atob (James M Snell) #37529
- deps:
- upgrade npm to 7.7.6 (Ruy Adorno) #37968
- This update adds workspaces support to npm run and npm exec
- doc:
- add legacy status to stability index (James M Snell) #37784
- add @linkgoron to collaborators (Nitzan Uziely) #37817
- http:
- add http.ClientRequest.getRawHeaderNames() (simov) #37660
Commits
- [dc9cd43d8f] - (SEMVER-MINOR) buffer: implement btoa and atob (James M Snell) #37529
- [377830fd28] - child_process: remove unused argument (Rich Trott) #37923
- [cdfc1c8692] - child_process: cleanup AbortSignal duplication (Nitzan Uziely) #37823
- [95aa032413] - (SEMVER-MINOR) child_process: add timeout to spawn and fork (Nitzan Uziely) #37256
- [50fc6b9df0] - crypto: clear errors in SignTraits::DeriveBits (Filip Skokan) #37820
- [79259389a1] - crypto: fix DiffieHellman argument validation (Antoine du Hamel) #37810
- [11d45855cd] - crypto: fix header name (Jiawen Geng) #37792
- [c37806d0ba] - crypto: use macro map for NodeCryptoError (Darshan Sen) #37758
- [bfe3f21ee0] - crypto: fix crypto.verify callback invocation with a private keyobject (Filip Skokan) #37795
- [f2cef54b6f] - deps: upgrade npm to 7.7.6 (Ruy Adorno) #37968
- [ec82feb728] - deps: upgrade npm to 7.7.5 (Ruy Adorno) #37919
- [649e04c4a5] - deps: upgrade npm to 7.7.4 (Ruy Adorno) #37897
- [d5b472b70d] - deps: upgrade npm to 7.7.0 (Ruy Adorno) #37879 …

15.12.0 Mar 17, 2021

Notable Changes
- crypto:
- add optional callback to crypto.sign and crypto.verify (Filip Skokan) #37500
- support JWK objects in create*Key (Filip Skokan) #37254
- deps:
- switch openssl to quictls/openssl (James M Snell) #37601
- update to [email protected] (Guy Bedford) #37712
- fs:
- improve fsPromises writeFile performance (Nitzan Uziely) #37610
- improve fsPromises readFile performance (Nitzan Uziely) #37608
- lib:
- implement AbortSignal.abort() (James M Snell) #37693
- node-api:
- define version 8 (Gabriel Schulhof) #37652
- worker:
- add setEnvironmentData/getEnvironmentData (James M Snell) #37486
Commits
- [44514600b2] - assert,util: fix commutativity edge case (Ruben Bridgewater) #37711
- [8666d777cc] - benchmark: add benchmark for fsPromises.writeFile (Nitzan Uziely) #37610
- [e9028eb646] - cluster: restructure to same prototype for cluster child (Yash Ladha) #36610
- [8e1257e26d] - cluster: clarify construct Handle (Jackson Tian) #37385
- [341ee31e15] - crypto: reconcile duplicated code (James M Snell) #37704
- [a2d08d5dfd] - crypto: add internal error codes (Darshan Sen) #37650
- [922f2f0eb2] - (SEMVER-MINOR) crypto: add optional callback to crypto.sign and crypto.verify (Filip Skokan) #37500
- [55e522ca23] - (SEMVER-MINOR) crypto: support JWK objects in create*Key (Filip Skokan) #37254
- [33180fad81] - crypto: add separate error for INVALID_KEY_TYPE (Darshan Sen) #37555 …

15.11.0 Mar 3, 2021

Notable Changes
- [a3e3156b52] - (SEMVER-MINOR) crypto: make FIPS related options always awailable (Vít Ondruch) #36341
- [9ba5c0f9ba] - (SEMVER-MINOR) errors: remove experimental from --enable-source-maps (Benjamin Coe) #37362
Commits
- [d039e6fa80] - assert: refactor to avoid unsafe array iteration (Antoine du Hamel) #37344
- [d2e5529e08] - bootstrap: include v8 module into the builtin snapshot (Joyee Cheung) #36943
- [59861bac0e] - bootstrap: include fs module into the builtin snapshot (Joyee Cheung) #36943
- [458a4108b7] - buffer: make Blob's constructor more spec-compliant (Michaël Zasso) #37361
- [0d564ce214] - buffer: make Blob's slice method more spec-compliant (Michaël Zasso) #37361
- [ddae112133] - child_process: fix spawn and fork abort behavior (Nitzan Uziely) #37325
- [b1e188de8d] - crypto: refactor hasAnyNotIn to avoid unsafe array iteration (Antoine du Hamel) #37433
- [291d9e9936] - crypto: check ed/x webcrypto key import algorithm names (Filip Skokan) #37305
- [a3e3156b52] - (SEMVER-MINOR) crypto: make FIPS related options always awailable (Vít Ondruch) #36341
- [b634469c38] - crypto: refactor to avoid unsafe array iteration (Antoine du Hamel) #37364
- [01773ab614] - crypto: use BoringSSL compatible errors (Shelley Vohr) #37297
- [f3d67000a0] - deps: upgrade npm to 7.6.0 (Ruy Adorno) #37559
- [e1045f1004] - deps: upgrade npm to 7.5.6 (Ruy Adorno) #37496
- [80d3c118f4] - deps: V8: cherry-pick 373f4ae739ee (Richard Lau) #37505 …

Other versions

  • 15.10.0
  • 15.9.0
  • 15.8.0
  • 15.7.0
  • 15.6.0
  • 15.5.1

Frequently asked questions

Is Node.js 15 free?

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

What is the latest version of Node.js 15?

The latest version is 15.14.0, released on Apr 6, 2021.

Is it safe to download Node.js 15?

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 fa460c0483126bad8296be312f23bdc8c8baf0974f512427b1c90846971af29f.

Which Windows versions does Node.js 15 support?

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

How do I install Node.js 15 silently?

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

How do I uninstall Node.js 15?

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

What file types can Node.js 15 open?

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