Node.js version manager lovingly made for Fish.
Not that POSIX-compatible script. Designed from the ground up for Fish, this tool helps you manage multiple active versions of Node on a single local environment. Quickly install and switch between runtimes without cluttering your home directory or breaking system-wide scripts.
- 100% pure Fish—quick & easy to contribute to or change
- Tab-completable seamless shell integration
.node-version
and.nvmrc
support- XDG Base Directory compliant
- No setup—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
List 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 that can be installed.
nvm list-remote
Want to uninstall a version?
nvm uninstall v15.3.0
An .nvmrc
file makes it easy to lock a specific version of Node for different projects. Just create an .nvmrc
(or .node-version
) file containing a version number or alias, e.g., latest
, lts
, carbon
, in the root of your project.
node --version >.nvmrc
Then run nvm install
to install or nvm use
to activate that version. Works from anywhere inside your project by traversing the directory hierarchy until an .nvmrc
is found.
nvm install
Use 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 use:
set --universal nvm_default_version v18.4.0
If you have a list of default packages you want installed every time you install a new Node version use:
set --universal nvm_default_packages yarn np
nvm.fish started out in 2016 by @jorgebucaran as Fish's premier choice to Node.js version management. All credit to @creationx and @ljharb for creating the one true nvm.sh that served as the inspiration for this project. If you are looking for a way to use the original nvm right from Fish, check out @FabioAntunes/fish-nvm or @derekstavis/plugin-nvm. Thank you to all our contributors! <3