About Node.js 23
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Notable Changes
- [64b086740a] - (SEMVER-MINOR) assert: implement partial error comparison (Ruben Bridgewater) #57370
- [053cef70e0] - (SEMVER-MINOR) crypto: add optional callback to crypto.diffieHellman (Filip Skokan) #57274
- [f8aff90235] - (SEMVER-MINOR) process: add execve (Paolo Insogna) #56496
- [4b04c92d7d] - (SEMVER-MINOR) sqlite: add StatementSync.prototype.columns() (Colin Ihrig) #57490
- [1b8d1d3a3a] - (SEMVER-MINOR) util: expose diff function used by the assertion errors (Giovanni Bucci) #57462
Commits
- [7b72396c8b] - assert: improve partialDeepStrictEqual performance (Ruben Bridgewater) #57509
- [64b086740a] - (SEMVER-MINOR) assert: implement partial error comparison (Ruben Bridgewater) #57370
- [f694d7de0e] - (SEMVER-MINOR) assert: improve partialDeepStrictEqual (Ruben Bridgewater) #57370
- [80d9d5653f] - (SEMVER-MINOR) assert,util: improve performance (Ruben Bridgewater) #57370
- [d52a71f832] - (SEMVER-MINOR) benchmark: adjust assert runtimes (Ruben Bridgewater) #57370
- [7592cf4cd7] - (SEMVER-MINOR) benchmark: skip running some assert benchmarks by default (Ruben Bridgewater) #57370
- [e4cc54a746] - (SEMVER-MINOR) benchmark: add assert partialDeepStrictEqual benchmark (Ruben Bridgewater) #57370
- [de48407011] - build: fix update-wpt workflow (Jonas) #57468
- [52cd0954f9] - cli: clarify --cpu-prof-name allowed values (Eugenio Ceschia) #57433
- [7611fc14de] - crypto: fix output of privateDecrypt with zero-length data (Filip Skokan) #57575
- [cc42ee8fc7] - crypto: ensure expected JWK alg in SubtleCrypto.importKey RSA imports (Filip Skokan) #57450
- [053cef70e0] - (SEMVER-MINOR) crypto: add optional callback to crypto.diffieHellman (Filip Skokan) #57274
- [1f08864fd7] - debugger: fix behavior of plain object exec in debugger repl (Dario Piotrowicz) #57498
- [162b2828eb] - deps: update undici to 6.21.2 (Matteo Collina) #57442
- [43bea6bb80] - deps: V8: cherry-pick c172ffc5bf54 (Choongwoo Han) #57437
- [99f93afb9d] - deps: update ada to v3.2.1 (Yagiz Nizipli) #57429
- [30e5658f12] - deps: update googletest to 0bdccf4 (Node.js GitHub Bot) #57380
- [573467c070] - deps: update acorn to 8.14.1 (Node.js GitHub Bot) #57382
- [affeaac0c7] - doc: add gurgunday as triager (Gürgün Dayıoğlu) #57594
- [4ed1a098f5] - doc: clarify behaviour of node-api adjust function (Michael Dawson) #57463
- [921041b284] - doc: remove Corepack documentation (Antoine du Hamel) #57635 …
| Publisher | Node.js Foundation |
|---|---|
| Author | OpenJS Foundation |
| Version | 23.11.0 |
| Release date | 2025-04-01 |
| License | MIT |
| Installer type | wix, zip |
| Architecture | x64, arm64 |
| Package ID | OpenJS.NodeJS.23 |
| Admin rights | Required |
| Install scope | All users |
winget install --id=OpenJS.NodeJS.23 -ewinget upgrade --id=OpenJS.NodeJS.23 -ewinget uninstall --id=OpenJS.NodeJS.23 -emsiexec /i "node-v23.11.0-x64.msi" /quiet /norestartmsiexec /x {6403CDE6-B8BE-41A9-9887-8D369B2086E5} /quietNode.js 23 adds these commands to the command line: corepack, node, npm, npx.
Node.js 23 can open or be associated with 3 file types:
Notable Changes
- [927d985aa0] - (SEMVER-MINOR) dns: add TLSA record query and parsing (Rithvik Vibhu) #52983
- [0236fbf75a] - (SEMVER-MINOR) process: add threadCpuUsage (Paolo Insogna) #56467
Commits
- [f4a82fddb1] - benchmark: add a warmup on bench-openSync (Elves Vieira) #57051
- [b384baa073] - build: print 'Formatting Markdown...' for long task markdown formatting (1ilsang) #57108
- [fec2d50308] - build: add skip_apidoc_files and include QUIC (RafaelGSS) #56941
- [5af35d1850] - build: fix GN build failure (Cheng) #57013
- [35f89aa66f] - build: fix GN build of uv (Cheng) #56955
- [e26d4841d1] - cli: allow --cpu-prof* in NODE_OPTIONS (Carlos Espa) #57018
- [b50fc42a99] - crypto: support --use-system-ca on non-Windows and non-macOS (Joyee Cheung) #57009
- [dfdaa92a37] - crypto: fix missing OPENSSL_NO_ENGINE guard (Shelley Vohr) #57012
- [18ea88bcbe] - crypto: cleanup root certificates and skip PEM deserialization (Joyee Cheung) #56999
- [8076284f9e] - deps: update cjs-module-lexer to 2.1.0 (Node.js GitHub Bot) #57180
- [8644cf3e5a] - deps: update ngtcp2 to 1.11.0 (Node.js GitHub Bot) #57179
- [2aceca15d6] - deps: update sqlite to 3.49.1 (Node.js GitHub Bot) #57178
- [8421021427] - deps: update ada to 3.1.0 (Node.js GitHub Bot) #57083
- [21d795a5f0] - (SEMVER-MINOR) dns: add TLSA record query and parsing (Rithvik Vibhu) #52983
- [455bf5a0a8] - doc: update options to filehandle.appendFile() (Hasegawa-Yukihiro) #56972 …
Yes. Node.js 23 is free and open-source software released under the MIT license.
The latest version is 23.11.0, released on Apr 1, 2025.
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 4d345be9222ffcc052921865a6ac498ac4d93c833ac5c37b84784bd6738c7dca.
Node.js 23 runs on Windows and is available for 64-bit (x64), ARM64 systems.
Run the offline installer with msiexec /i "node-v23.11.0-x64.msi" /quiet /norestart, or install it with Windows Package Manager: winget install --id=OpenJS.NodeJS.23 -e --silent.
Open Settings › Apps › Installed apps, find Node.js 23 and select Uninstall. From the command line, run winget uninstall --id=OpenJS.NodeJS.23 -e.
Node.js 23 supports 3 file types, including .cjs, .js, .mjs.