// the find
jasongin/nvs
Node Version Switcher - A cross-platform tool for switching between versions and forks of Node.js
NVS is a cross-platform Node.js version manager that lets you install and switch between multiple Node versions, forks (iojs, chakracore), and even custom remotes. It's aimed at developers who work across Windows and Unix and want one tool instead of nvm on Mac/Linux plus something separate on Windows.
First-class native Windows support (MSI, winget, chocolatey, PowerShell auto-switching) instead of the WSL-only workaround most nvm users rely on. The 'remote' concept is genuinely useful — you can point at nightly builds or forks like chakracore without them colliding with your regular installs. Bootstrapping is just a few dozen lines of shell script per platform, with the rest of the logic in plain JS, which keeps the POSIX/Windows code paths from diverging. Dependencies are vendored into the repo so there's no npm install step to bootstrap the tool itself.
Automatic per-directory switching only works in Bash or PowerShell — Command Prompt users, which is a lot of Windows dev environments, don't get it. Global npm modules are versioned per-Node-install, but migrating them between versions is a manual `nvs migrate` step rather than something that happens automatically, so it's easy to end up hunting for a missing global CLI after an upgrade. It's effectively a single-maintainer project going up against Rust-based alternatives (volta, fnm) that install faster and have more consistent recent activity — worth checking the commit cadence before betting a team's workflow on it. No shell-completion support is mentioned anywhere, which is a rough edge compared to nvm's community completions.