JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web … Wikipedia
Factsheet
Original author Ryan Dahl
Initial release May 27, 2009; 16 years ago (2009-05-27)
Factsheet
Original author Ryan Dahl
Initial release May 27, 2009; 16 years ago (2009-05-27)
🌐
GitHub
github.com › nodejs › node
GitHub - nodejs/node: Node.js JavaScript runtime ✨🐢🚀✨
Binaries, installers, and source tarballs are available at https://nodejs.org/en/download/. ... The 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.
Starred by 115K users
Forked by 34K users
Languages   JavaScript 62.5% | C++ 23.1% | Python 10.1% | C 2.7% | HTML 0.6% | Shell 0.5%
🌐
GitHub
github.com › nodejs › node › releases
Releases · nodejs/node
[13120a43d4] - deps: update simdjson to 4.1.0 (Node.js GitHub Bot) #60542
Author   nodejs
🌐
Node.js
nodejs.org › en › blog › release › v24.11.1
Node.js — Node.js v24.11.1 (LTS)
[c221d892ef] - deps: update corepack to 0.34.2 (Node.js GitHub Bot) #60550
🌐
GitHub
github.com › nodejs
Node.js · GitHub
Node.js has 228 repositories available. Follow their code on GitHub.
🌐
Node.js
nodejs.org › en › download › current
Node.js — Download Node.js®
Learn more about Node.js releases, including the release schedule and LTS status.
🌐
GitHub
github.com › jprichardson › node-github-download
GitHub - jprichardson/node-github-download: Easily download Github repos without dependencies such as Git, Tar, Unzip, etc.
I also didn't want any dependencies amongst any 3rd party programs like Git, Tar, or Unzip. Pure Node.js JavaScript is what I wanted. ... Downloads the latest copy of some Github reference (branch, tag, or commit), or the master branch by default (specifically the master branch, it does not ...
Starred by 77 users
Forked by 32 users
Languages   JavaScript
🌐
Node.js
nodejs.org › en › blog › release › v25.2.0
Node.js — Node.js v25.2.0 (Current)
[b722236a12] - meta: bump actions/download-artifact from 5.0.0 to 6.0.0 (dependabot[bot]) #60532 · [3314b0bc60] - meta: bump actions/upload-artifact from 4.6.2 to 5.0.0 (dependabot[bot]) #60531 · [d1d9891feb] - meta: bump actions/github-script from 7.0.1 to 8.0.0 (dependabot[bot]) #60530 · [995596a34f] - meta: bump actions/setup-node from 5.0.0 to 6.0.0 (dependabot[bot]) #60529
🌐
Node.js
nodejs.org › en › blog › release › v25.0.0
Node.js — Node.js v25.0.0 (Current)
[ee36b86ba3] - deps: patch V8 to 13.7.152.19 (Node.js GitHub Bot) #58713
Find elsewhere
🌐
Node.js
nodejs.org › en › blog › release › v22.21.0
Node.js — Node.js v22.21.0 (LTS)
[badbba2da9] - deps: update googletest to 50b8600 (Node.js GitHub Bot) #59955
🌐
GitHub
github.com › nodejs › node-gyp
GitHub - nodejs/node-gyp: Node.js native addon build tool
All current and LTS target versions of Node.js are supported. Depending on what version of Node.js is actually installed on your system node-gyp downloads the necessary development files or headers for the target version.
Starred by 10.4K users
Forked by 1.9K users
Languages   Python 87.4% | JavaScript 11.1% | Emacs Lisp 0.8% | C# 0.5% | C++ 0.1% | Shell 0.1%
🌐
GitHub
github.com › nodejs › nodejs.org
GitHub - nodejs/nodejs.org: The Node.js® Website
Nodejs.org by the OpenJS Foundation is the official website for the Node.js® JavaScript runtime. This repo is the source code for the website.
Starred by 6.8K users
Forked by 6.5K users
Languages   TypeScript 49.0% | MDX 27.7% | JavaScript 16.4% | CSS 4.7% | Shell 2.2% | HTML 0.0%
🌐
GitHub
github.com › nodesource › distributions
GitHub - nodesource/distributions: NodeSource Node.js Binary Distributions
NodeSource Node.js Binary Distributions. Contribute to nodesource/distributions development by creating an account on GitHub.
Starred by 13.8K users
Forked by 3.1K users
Languages   Shell
🌐
Node.js
nodejs.org › en › blog › release › v25.1.0
Node.js — Node.js v25.1.0 (Current)
[aacfc0d212] - deps: update corepack to 0.34.1 (Node.js GitHub Bot) #60314
🌐
Node.js
nodejs.org › en › blog › release › v20.19.6
Node.js — Node.js v20.19.6 (LTS)
[3456ec946d] - crypto: update root certificates to NSS 3.116 (Node.js GitHub Bot) #59956 · [6277910a15] - crypto: update root certificates to NSS 3.114 (Node.js GitHub Bot) #59571 · [1788fb5f3d] - deps: update undici to 6.22.0 (Matteo Collina) #60112 · [5d61b55f24] - deps: update uvwasi to 0.0.23 (Node.js GitHub Bot) #59791 ·
🌐
Node.js
nodejs.org › en › blog › release › v24.0.0
Node.js — Node.js v24.0.0 (Current)
[a56175561a] - deps: update amaro to 0.5.0 (nodejs-github-bot) #57687 · [a86912a462] - deps: update icu to 77.1 (Node.js GitHub Bot) #57455
🌐
GitHub
github.com › actions › node-versions › releases
Releases · actions/node-versions
Latest · Node.js 20.19.6 · Assets 9 · Loading · There was an error while loading. Please reload this page. 12 Nov 01:07 · github-actions · 24.11.1-19282993875 · 7cc031e · This commit was created on GitHub.com and signed with GitHub’s verified signature.
Author   actions
🌐
DEV Community
dev.to › nikolicstjepan › how-to-install-nodejs-from-source-code-on-github-468j
How to Install Node.js from Source Code on GitHub - DEV Community
November 7, 2024 - The server only allowed access to GitHub and had the default apt build tools installed. I couldn’t use version managers like nvm or add external repositories to install Node.js via apt. Additionally, the default Node.js version available through apt was outdated and didn’t meet my requirements. Installing Node.js from source allows you to build the latest version or customize your build according to your needs. This guide provides step-by-step instructions for downloading...
🌐
Node.js
nodejs.org › en
Node.js — Run JavaScript Everywhere
Get Node.js®Get Node.js®Get security support for EOL Node.js versions
Top answer
1 of 16
1868

Ubuntu Linux/Mac

The module n makes version-management easy:

sudo npm install n -g

For the latest stable version:

n stable

For the latest version:

n latest

Debian 10

Upgrade older versions of node and npm on Debian 10 as follows:

sudo su -c 'curl -sL https://deb.nodesource.com/setup_18.x | bash -'
sudo apt-get install nodejs -y
sudo apt update
sudo apt upgrade
sudo npm install -g [email protected]
node --version
npm --version

Note: Replace setup_18 with the latest long-term support release.

Windows

Just reinstall node from the .msi in Windows from the node website.

2 of 16
839

All Platforms (Mac, Linux & Windows) 2024

If you just need to upgrade your old version of Node.js to the latest one and don't need multiple versions, simply over-write your existing executable with the new one.

Download the Latest Node.js from nodejs.org/en/download

This Just Works! TM on all platforms and is the easiest/fastest method.
When you run node -v in your terminal you will see the the latest version.

Mac

If you originally installed Node.js using brew then run:

brew upgrade node

Managing Multiple Versions of Node.js:

If you need to run multiple versions of Node.js on your machine e.g. if you have an older project that targets a specific version on AWS Lambda, then NVM (Node Version Manger) is your friend!

Step 1 - Get NVM

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

If you're curious about the installation command read the source code
... its been reviewed by several node.js security experts

Step 2 - Install the Specific Version of Node.js you need

Once you've got NVM you can install a specific version of Node.js using the nvm command:

nvm install v22.16.0

Note: you may need to close & re-open your terminal window for nvm command to be available.

You should expect to see something like this in your terminal:

Now using node v22.16.0

You now have the latest Node.js on your machine.
And if you need to temporarily switch to a different/previous version, you can do it with a simple nvm command.

Note: avoid using sudo with Node/NPM as it violates the security principal of least privilege

NVM is considered "better" than N for managing multiple Node.js versions because the verbose commands mean it is much easier to keep track of what you are doing in your Terminal/SSH Log. It is used by the team at NPM the creators/custodians of the Node.js World!