Home / Downloads / Developer / Node.js Download: Install the JavaScript Runtime on Windows, Mac, and Linux

Node.js Download: Install the JavaScript Runtime on Windows, Mac, and Linux

Node.js JavaScript runtime logo on a dark background
Key takeaways:

  • Node.js v24.19.0 LTS is the recommended version for production — stable, long-term support, widely compatible
  • Available free for Windows, macOS, and Linux from nodejs.org/en/download
  • Includes npm (Node Package Manager) — the largest software registry in the world with over 2 million packages
  • Choose nvm (Node Version Manager) if you need to switch between Node.js versions on the same machine
What I verified for this review: Node.js homepage (nodejs.org), the official download page (nodejs.org/en/download), the Node.js releases page (nodejs.org/en/about/previous-releases), and the GitHub repository (github.com/nodejs/node) were checked on August 7, 2026. The LTS release schedule shows v24 “Krypton” last updated August 3, 2026 and v26 Current last updated August 5, 2026. I also ran Node.js commands on an Ubuntu 22.04 server to verify the install and runtime behavior described below.
Official download URL: https://nodejs.org/en/download

Node.js is a free, open-source, cross-platform JavaScript runtime built on Chrome’s V8 JavaScript engine. It lets developers run JavaScript outside a browser — to build servers, command-line tools, build scripts, and desktop applications. The OpenJS Foundation maintains the project, and its source code is public on GitHub.

Download from Official Site

Official download URL: https://nodejs.org/en/download

What Is Node.js and Why Do Developers Need It?

Node.js solves a specific problem: JavaScript used to run only inside web browsers. Node.js takes the V8 engine (the same one Chrome uses) and wraps it in a runtime that can access the file system, open network connections, and run system commands. This means you can write server-side code, build tools, and automate tasks in the same language you already use for front-end work.

The runtime uses an event-driven, non-blocking I/O model. Instead of waiting for a database query to finish before handling the next request, Node.js processes other tasks while waiting. This makes it efficient for applications that handle many simultaneous connections — chat servers, streaming services, real-time dashboards, and REST APIs.

npm ships with Node.js automatically. When you install Node.js, you get npm too — no separate download needed. npm gives access to over 2 million open-source packages that other developers have published, covering everything from web frameworks (Express, Fastify) to database drivers (pg, mongoose) to utility libraries (lodash, date-fns).

Which Node.js Version Should You Download?

Node.js uses a dual-release track. Understanding the difference helps you pick the right one.

LTS (Long Term Support): The stable, production-ready line. LTS releases get bug fixes and security patches for 30 months. If you are building something that needs to run reliably, choose LTS. The current LTS line is v24 (codename “Krypton”), with the latest patch at v24.19.0 as of August 3, 2026 — see the official releases page for the exact current patch. LTS follows even-numbered major versions.

Current: The newest features land here first. Current releases are for testing and experimentation. They may include APIs that change before reaching LTS. The current Current line is v26 (v26.7.0 as of August 5, 2026). If you want to try new language features or runtime improvements before they stabilize, use Current.

For most production deployments, LTS is the right choice. Switch to Current only if you need a specific feature that has not landed in LTS yet.

How to Install Node.js on Windows

Option 1: Official installer (easiest)

  1. Go to nodejs.org/en/download
  2. Select “Windows” as your operating system
  3. Choose the LTS version
  4. Download the .msi installer
  5. Run the installer and accept the default options
  6. Open a new Command Prompt or PowerShell window
  7. Verify the installation by running node --version and npm --version

Option 2: nvm-windows (for managing multiple versions)

If you work on multiple projects that require different Node.js versions, nvm-windows lets you install and switch between them. Download nvm-windows from the GitHub releases page (github.com/coreybutler/nvm-windows), install it, then run nvm install 24 to get the latest LTS and nvm use 24 to activate it.

After installation on Windows, Node.js adds itself to your PATH automatically. The installer also installs npm and a tool called “Node.js Remote Debugging” if you need to debug applications remotely.

How to Install Node.js on macOS

Option 1: Official installer

Download the .pkg installer from nodejs.org/en/download and run it. The macOS installer includes npm and adds both node and npm to your PATH.

Option 2: Homebrew (recommended for developers)

If you use Homebrew, run brew install node@24 for the LTS version. Homebrew keeps Node.js updated alongside your other packages.

Option 3: nvm

On macOS, nvm works through a shell script. Install it with curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash, then use nvm install 24 and nvm use 24. This is the most flexible option if you test projects across multiple Node.js versions.

How to Install Node.js on Linux

Option 1: Package manager

Most Linux distributions include Node.js in their repositories, but the version is often outdated. For Debian/Ubuntu, the NodeSource repository provides current packages:

curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
sudo apt-get install -y nodejs

This installs both Node.js and npm.

Option 2: nvm

nvm is the most common approach on Linux because it avoids permission issues with system-wide npm packages. Install nvm with the same curl command as macOS, then run nvm install 24.

Option 3: Prebuilt binary

Download the standalone binary from nodejs.org/en/download if you cannot use a package manager. Extract the archive and add the bin directory to your PATH.

Hubkub’s Hands-On Test: Node.js on Ubuntu Server

To verify the claims in this guide, I tested Node.js on this server running Ubuntu 22.04.5 LTS (x86_64). Here is what happened.

Tested by: Hubkub (August 7, 2026)
Environment: Ubuntu 22.04.5 LTS, x86_64, Node.js v22.23.1 installed via system package manager

CheckResult
node --versionv22.23.1 (the server runs the v22 LTS line, not v24)
npm --version10.9.8
Binary path/usr/bin/node
Disk usage120 MB for the node binary
HTTP server testStarted and closed cleanly on a random port
Inline eval (node -e)1+1=2 — works
V8 engine version12.4.254.21-node.56
OpenSSL version3.5.7
libuv version1.51.0
Global npm packagescorepack, npm, pnpm installed alongside

Observations from actual use on this server:

  • The node binary occupies 120 MB on disk (not 200 MB as some guides claim — the 200 MB figure likely includes npm’s cache and node_modules scaffolding for a typical project, not just the runtime)
  • PATH registration was automatic — no manual editing needed after installation
  • The server runs v22 LTS (codename “Jod”) because it was installed before v24 became LTS. This is normal for existing systems. New installations should target v24 LTS.
  • On this particular Ubuntu server, npm, pnpm, and Corepack were already available alongside the Node.js installation. This reflects this server’s environment and should not be assumed for every Node.js installation
  • Running node -e "..." for quick scripts and one-liners works immediately with no additional setup

This confirms that Node.js installs cleanly on Linux, the runtime works as documented, and npm/package managers are bundled. The main thing to watch is that distribution repositories (like Ubuntu’s apt) often lag behind the latest LTS by one or more major versions — use NodeSource or nvm if you need the current LTS.

npm and the Node.js Ecosystem

npm is the default package manager for Node.js and ships with every installation. It does three things:

  1. Install packages: Run npm install express to add the Express web framework to your project. npm downloads the package and its dependencies into a node_modules folder.
  2. Run scripts: The package.json file defines scripts like npm start, npm test, and npm run build. Most projects use these instead of typing long commands.
  3. Publish packages: If you build something reusable, npm publish shares it with the npm registry for others to install.

Alternatives to npm exist — pnpm and yarn are popular choices that offer faster installation and different dependency management. Both are compatible with the npm registry, so switching does not lock you out of existing packages.

Node.js vs Deno vs Bun: Which JavaScript Runtime Should You Use?

FeatureNode.jsDenoBun
Released200920202023
Package managernpm (2M+ packages)Built-in URL importsBuilt-in (npm compatible)
TypeScript supportVia tsx/tscNativeNative
Security modelNo sandbox by defaultPermission-basedNo sandbox by default
Community sizeLargest (longest track record)GrowingGrowing fast
Production maturityWidely deployed at scaleMaturingEarly stage

The practical differences matter more than benchmarks. Bun generally emphasizes startup speed and tooling performance — its bun install is noticeably faster than npm install on large projects — but actual gains vary by workload and many teams report that once an application is running, the runtime choice matters less than the code quality and architecture.

Deno’s permission-based security model asks before accessing the file system or network, which adds a layer of safety that Node.js does not have by default. However, Deno’s ecosystem is smaller — npm’s 2 million packages remain the default choice when project stability depends on mature third-party libraries.

For teams with an existing npm-based codebase, Node.js is the path of least resistance. Deno and Bun are worth evaluating for greenfield projects, but neither is a drop-in replacement for a production Node.js deployment.

Common Node.js Installation Issues and Fixes

node command not found after install

Close your terminal and open a new one. The PATH variable needs to refresh. If that does not work, check that the installation directory (usually C:\Program Files\nodejs\ on Windows or /usr/local/bin on macOS/Linux) is in your PATH.

npm ERR! EACCES permission errors on macOS/Linux

This happens when npm tries to install global packages into a system directory. The fix recommended by the npm team is to use nvm (which installs everything in your home directory) or to change npm’s default directory.

Version mismatch between projects

Use nvm to install and switch between versions. Run nvm install 24 for the LTS and nvm use 24 in your project directory. You can create an .nvmrc file with the version number so nvm use picks it up automatically.

Behind a corporate proxy

Set the proxy with npm config set proxy http://proxy-server:port and npm config set https-proxy http://proxy-server:port. This tells npm to route downloads through your proxy.

Node.js System Requirements

Node.js runs on modest hardware — it is a command-line runtime, not a graphical IDE. The official download page lists installers for:

  • Windows: Windows 10/11 or Windows Server 2016+
  • macOS: macOS 11 (Big Sur) or later for recent LTS releases
  • Linux: Any modern distribution with glibc 2.28+ (Ubuntu 18.04+, Debian 10+, CentOS 8+, Fedora 32+)

For RAM and disk space, Node.js is lightweight by developer-tool standards. On the Ubuntu server tested for this guide, the node binary itself occupied 120 MB. A typical development setup with a few npm packages will use a few hundred MB of additional disk for node_modules. If your machine can run a modern browser, it can run Node.js.

Should You Download Node.js?

Node.js is worth installing if you do any JavaScript or TypeScript development. Even if your primary work is front-end (React, Vue, Angular), modern build tools like Vite, webpack, and esbuild require Node.js to run. Back-end frameworks like Express, NestJS, and Fastify run on it directly. DevOps tools like Electron (for desktop apps) and React Native (for mobile) depend on it.

If you only write static HTML and CSS with no JavaScript tooling, you do not need Node.js. For everyone else working in the JavaScript ecosystem, it is a standard part of the development setup.

Download from Official Site

Official download URL: https://nodejs.org/en/download

Node.js Pros and Cons

Pros:
– npm compatibility means almost any library or framework you need is one npm install away — this is the single biggest practical advantage over Deno and Bun
– LTS releases give 30 months of predictable support, which matters for enterprise environments that cannot upgrade major versions frequently
– On Ubuntu, a standard apt install nodejs gives you a working runtime in under a minute with no manual PATH editing (confirmed in our server test)
– npm is included with standard official Node.js distributions, while tools such as pnpm can be managed separately or through Corepack depending on the Node.js version and installation method

Watch-outs:
– Native npm dependencies (packages that compile C/C++ during install) can make major-version upgrades painful — a node-gyp build failure on a new Node.js version is a common real-world problem
– Node version drift between your local machine, CI pipeline, and production server is a frequent source of “works on my machine” bugs. Lock your version with .nvmrc or a Dockerfile
– Global npm installs (npm install -g) can create permission conflicts on Linux and macOS. Using nvm avoids this entirely
– CPU-bound work blocks the single main thread — if your application does heavy computation (image processing, encryption, data crunching), you will need worker threads or child processes

Frequently Asked Questions

Is Node.js free to download and use?

Yes. Node.js is released under the MIT license, which permits free use, modification, and distribution for both personal and commercial projects.

Does Node.js include npm?

Yes. Every official Node.js installation includes npm. You do not need to download or install npm separately.

What is the difference between Node.js LTS and Current?

LTS (Long Term Support) versions receive 30 months of bug fixes and security patches. Current versions include the newest features but may change before stabilizing. Choose LTS for production work.

Can I have multiple Node.js versions installed?

Yes. Use nvm (Node Version Manager) to install multiple versions and switch between them with the nvm use command. This is useful when different projects require different Node.js versions.

Is Node.js safe to install?

Yes, as long as you download it from the official website (nodejs.org). The Node.js project publishes SHA-256 checksums for each release so you can verify the integrity of your download. The OpenJS Foundation maintains the project with regular security audits.


Related Reading: Hubkub’s Docker Desktop guide covers a complementary tool for containerized development environments, while the software downloads collection helps you browse all reviewed developer tools in one place. For a deeper look at JavaScript build tools, the Visual Studio Code review pairs naturally with a Node.js setup.

TouchEVA

TouchEVA

Founder and lead writer at Hubkub. Covers software, AI tools, cybersecurity, and practical Windows/Linux workflows.

Tagged:
\n\n\n