TL;DR — Quick Summary
fnm (Fast Node Manager) switches Node.js versions instantly. Written in Rust — 40x faster than nvm. Automatic version switching with .node-version or .nvmrc per project.
fnm switches Node versions instantly. 40x faster than nvm — automatic per-project switching.
Installation
# macOS
brew install fnm
# Cargo
cargo install fnm
# Shell setup (add to ~/.bashrc or ~/.zshrc)
eval "$(fnm env --use-on-cd)"
Usage
# Install Node.js versions
fnm install 20
fnm install --lts
fnm install 18.17.0
# Switch versions
fnm use 20
fnm use --lts
fnm default 20
# List installed versions
fnm list
# Per-project version
echo "20" > .node-version
# fnm auto-switches when entering directory
Summary
- fnm manages Node.js versions — 40x faster than nvm
- Reads .node-version and .nvmrc files
- Automatic per-directory version switching
- Cross-platform: macOS, Linux, Windows
- Written in Rust — instant version switching