The Node.js version manager you'll adore, crafted just for Fish.
Nope, not that POSIX-compatible script. Built from scratch for Fish, this handy tool lets you juggle multiple active Node versions in a single local environment. Install and switch between runtimes like a boss, without messing up your home directory or breaking system-wide scripts.
- 100% pure Fish—so simple to contribute to or tweak
- Tab-completable for seamless shell integration
.node-version
and.nvmrc
support- XDG Base Directory compliant
- No setup needed—it just works!
Install with Fisher:
fisher install jorgebucaran/nvm.fish
Install the latest Node release and activate it.
nvm install latest
Install the latest LTS (long-term support) Node release.
nvm install lts
Install an older LTS release by codename.
Installs
8.16.2
, the latest release of the Carbon LTS line.
nvm install carbon
Or install a specific version of Node.
Supports full or partial version numbers, starting with an optional "v".
nvm install v15.3.0
Activate a version you've already installed.
nvm use v14
Check out which versions you have installed (includes your system-installed Node if there is one).
$ nvm list
system
v8.17.0 lts/carbon
v15.3.0
▶ v14.15.1 lts/fermium
v18.4.0 latest
Or list all the Node versions up for grabs.
nvm list-remote
Need to uninstall a version?
nvm uninstall v15.3.0
An .nvmrc
file is perfect for locking a specific version of Node for different projects. Just create an .nvmrc
(or .node-version
) file with a version number or alias, e.g., latest
, lts
, carbon
, in your project's root.
node --version >.nvmrc
Then run nvm install
to install or nvm use
to activate that version. Works like a charm from anywhere in your project by traversing the directory hierarchy until an .nvmrc
is found.
nvm install
Choose a mirror of the Node binaries. Default: https://nodejs.org/dist.
The nvm install
command activates the specified Node version only in the current environment. If you want to set the default version for new shells:
set --universal nvm_default_version v18.4.0
Got a list of default packages you want installed every time you install a new Node version?
set --universal nvm_default_packages yarn np
nvm.fish
was established in 2016 by @jorgebucaran as the go-to Node.js version manager for Fish. It was inspired by the original nvm.sh created by @creationix and @ljharb. To use the original nvm in Fish, consider @FabioAntunes/fish-nvm or @derekstavis/plugin-nvm. We appreciate all of our contributors! ❤️