Skip to content
SPECIFICTION
Get listed

chruby vs fnm

chruby

github.com

fnm

github.com

Side by side

Figurechrubyfnm
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Windows—Yes
macOSYesYes
LinuxYesYes
Plans published11
Spec score · Runtime Version Managers7.9 (#7)7.9 (#8)
Spec score · Development Environment Managers7.9 (#17)7.8 (#21)
Automatic switchingOptional auto-switching checks the current and parent directories for a .ruby-version file.Shell setup can enable automatic Node.js version switching when changing directories.
LicenseThe repository identifies its license as MIT.The repository identifies its license as GPL-3.0.
Purposechruby changes the current Ruby version in a shell.fnm is a fast and simple Node.js version manager built in Rust.

Plans

chruby

  • FreeFree

chruby pricing →

fnm

  • fnmFree

fnm pricing →

In their own words

chruby

chruby is a free, MIT-licensed shell utility for changing the Ruby version used in a session. Selecting a Ruby updates PATH and sets GEM_HOME and GEM_PATH for that installation. It can match installed Ruby names fuzzily and uses the system Ruby when no selection is made. Optional automatic switching checks the current and parent directories for a .ruby-version file. chruby supports bash 3 or later and zsh on Linux and macOS. Installation instructions cover a release tarball, Homebrew, Arch Linux AUR, Fedora Copr, and FreeBSD ports. Additional Ruby implementations can be installed with ruby-install or ruby-build. The project provides guidance for integrations including Capistrano, Chef, Cron, Emacs, Pow, Puppet, Sudo, Vim, and Fish. Releases are PGP signed, with verification instructions, and the codebase is described as about 100 lines with tests.

Visit github.com

fnm

fnm is a free Node.js version manager built in Rust for developers working from a command line or shell. It runs on macOS, Windows, and Linux, and is distributed as a single file through installation scripts, package managers, Cargo, or release binaries. It reads `.node-version` and `.nvmrc` files, so projects can specify a Node.js version. Shell setup can also enable automatic version switching when changing directories. The project provides setup instructions for Bash, Zsh, Fish, PowerShell, Windows Command Prompt, and Cmder. Its binary includes completions for Bash, Zsh, Fish, and PowerShell. On macOS and Linux, the installation script requires `curl` and `unzip`. The repository identifies the license as GPL-3.0 and invites pull requests, with issues available for project interaction. No paid plans are listed. The project page reports no published security advisories, while also noting that it has not set up a SECURITY.md file.

Visit github.com