Stop Manually Switching Node Versions on Windows — This Is the Tool You Need
You know the drill. One project needs Node 14, another needs Node 20, and you're stuck uninstalling and reinstalling Node.js like it's 2015. On Mac or Linux, nvm solves this instantly, but on Windows, the story's always been messier. That's where NVM for Windows comes in—the version manager that Microsoft, npm, and Google all point Windows developers toward. It's not the same as the Mac/Linux nvm (more on that in a sec), but it fills the exact same gap: clean, per-project Node version switching without the headache.
What It Does
NVM for Windows is a Node.js version manager built specifically for the Windows operating system. It lets you install, uninstall, and switch between different versions of Node.js on demand. Instead of manually downloading installers and managing environment variables, you run a single command to flip between versions.
The project is a standalone tool—it's not a port or clone of the popular nvm for Mac/Linux. The original nvm is a completely separate project with a different philosophy and architecture. NVM for Windows was built from scratch to work the way Windows expects, which matters more than you'd think. It's the recommendation you'll see in official docs from Microsoft's Node.js setup guide, npm's installation docs, and Google Cloud's Node.js setup instructions.
The current stable release is v1.1.12, and the project is actively maintained. The maintainers are also working on a successor called Runtime, but NVM for Windows remains the go-to tool in the meantime.
Why It's Cool
What makes this project worth your attention isn't just that it works—it's that it's the official answer for Windows developers. When Microsoft, npm, and Google all agree on a tool, that's a signal you should pay attention to.
Here's what stands out:
-
It's the recommended tool, not a random GitHub find. The README proudly notes that Microsoft, npm, and Google all cite it in their official documentation. That means it's been vetted, it's stable, and it's not going to disappear overnight.
-
It respects Windows conventions. The original
nvmis a Unix-style shell script that relies on POSIX behaviors. This project was built from the ground up for Windows, which means it handles things like path management and environment variables the way Windows actually does. That's a huge practical difference—no Cygwin, no WSL workarounds, no "it works on my Mac" nonsense. -
It handles the messy edge cases. The README is transparent about a known bug affecting installation of old (end-of-life) Node.js versions in the latest release. The stable version supports most EOL versions, so if you're maintaining a legacy project, you can pin to v1.1.12 and keep working. That level of honesty about limitations is rare and refreshing.
-
There's a clear roadmap. The maintainers aren't just parking the project—they're actively building Runtime as a successor and asking for community input through a form and their LinkedIn page. You're not investing in a dead tool; you're investing in an ongoing effort.
-
It's got real community traction. The repo shows significant download counts, release activity, and an active discussions section. This isn't a side project someone abandoned after a weekend.
How to Try It
Getting started is straightforward. Head over to the GitHub releases page and grab the latest stable version (v1.1.12 if you want the most battle-tested release).
The download comes as an installer, so setup is point-and-click rather than a command-line dance. Once it's installed, you'll have nvm available in your terminal. The basic workflow looks like this:
- Download and run the installer from the releases page.
- Open a new terminal window so the PATH updates take effect.
- Install a Node version:
nvm install 20.11.0 - Switch to it:
nvm use 20.11.0 - Verify it worked:
node --version
You can install multiple versions side by side and switch between them as your projects demand. If you run into issues or want to see what others are doing, the discussions section is the place to ask questions.
One thing to note: if you need to work with very old (end-of-life) Node.js versions, stick with the stable v1.1.12 release for now. The latest v1.2.x is a transition version with a known bug affecting some EOL installs.
Final Thoughts
If you develop Node.js on Windows, this tool removes a daily annoyance. It's not flashy, it doesn't reinvent the wheel—it just does one thing well and does it in a way that Windows developers actually need. The fact that it's the official recommendation from Microsoft, npm, and Google should tell you it's worth your time.
The project is actively maintained, has a clear successor in the works, and has a community that's willing to help. Whether you're juggling multiple client projects or just tired of the uninstall-reinstall cycle, NVM for Windows is a solid, pragmatic fix. Give it a shot—you'll wonder why you didn't switch sooner.
Follow @githubprojects for more developer tools and open source projects.