fnm (Fast Node Manager)

Fast Node.js version manager written in Rust. Compatible with .nvmrc and .node-version files. Installs in milliseconds vs nvm's seconds. Supports bash, zsh, fish, PowerShell, and Windows Command Prompt. Designed as a drop-in nvm replacement that's orders of magnitude faster with cross-platform support.

Evaluated Mar 06, 2026 (0d ago) v1.37+
Homepage ↗ Repo ↗ Developer Tools node version-manager rust fast nvm-compatible cross-platform shell
⚙ Agent Friendliness
68
/ 100
Can an agent use this?
🔒 Security
92
/ 100
Is it safe for agents?
⚡ Reliability
84
/ 100
Does it work consistently?

Score Breakdown

⚙ Agent Friendliness

MCP Quality
--
Documentation
87
Error Messages
82
Auth Simplicity
100
Rate Limits
100

🔒 Security

TLS Enforcement
100
Auth Strength
90
Scope Granularity
85
Dep. Hygiene
90
Secret Handling
95

Rust implementation with memory safety. HTTPS downloads from official Node.js CDN. No credentials needed. Open source and auditable.

⚡ Reliability

Uptime/SLA
82
Version Stability
88
Breaking Changes
85
Error Recovery
82
AF Security Reliability

Best When

You want a fast, nvm-compatible Node.js version manager that works on Windows, Mac, and Linux with your existing .nvmrc files.

Avoid When

You need package.json-based pinning (use Volta) or multi-language version management (use mise).

Use Cases

  • Replace nvm with a faster, cross-platform alternative that reads existing .nvmrc files without migration
  • Manage Node.js versions in CI/CD pipelines where speed matters — fnm installs Node in <1 second vs nvm's 5-10 seconds
  • Set up Windows developer environments that need .nvmrc compatibility without nvm's Windows quirks
  • Auto-switch Node.js versions per directory using shell hooks that read .nvmrc or .node-version files
  • Install multiple Node.js versions in parallel for testing compatibility across LTS releases

Not For

  • Non-Node.js runtime management — fnm is Node.js only; use mise or asdf for polyglot version management
  • Teams that need per-project pinning without shell hooks — Volta's package.json integration is more reliable for team consistency
  • Environments without shell hook support — fnm requires eval in shell rc file for auto-switching

Interface

REST API
No
GraphQL
No
gRPC
No
MCP Server
No
SDK
No
Webhooks
No

Authentication

Methods: none
OAuth: No Scopes: No

No authentication — local CLI tool. Downloads Node.js binaries from official distribution servers.

Pricing

Model: open_source
Free tier: Yes
Requires CC: No

GPL-3.0 licensed. Completely free and open source.

Agent Metadata

Pagination
none
Idempotent
Full
Retry Guidance
Not documented

Known Gotchas

  • Requires eval '$(fnm env)' in shell rc file for auto-switching — agents in non-interactive shells won't get automatic version switching
  • fnm use without --version in a directory without .nvmrc silently uses the default version — verify active version before running Node commands
  • Windows PowerShell and CMD require different eval syntax than bash/zsh — cross-platform CI scripts need conditional shell setup
  • fnm stores installations in ~/.local/share/fnm/ on Linux (different paths per OS) — path assumptions break cross-platform scripts
  • Auto-switching requires --use-on-cd flag in shell hook — not enabled by default, must be explicitly set
  • fnm list-remote requires network access — offline environments need versions pre-installed before use

Alternatives

Full Evaluation Report

Detailed scoring breakdown, competitive positioning, security analysis, and improvement recommendations for fnm (Fast Node Manager).

$99

Scores are editorial opinions as of 2026-03-06.

5215
Packages Evaluated
26151
Need Evaluation
173
Need Re-evaluation
Community Powered