Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
Alternatives To Asdf
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
2 days ago165mitShell
Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
3 days ago16November 26, 20235mitRust
A version manager for neovim
Asdf Plugins1,087
9 hours ago25mitShell
Convenience shortname repository for asdf community plugins
7 months ago4mitShell
Simple go version manager, gluten-free
8 hours ago16apache-2.0Go
A cross-platform and extendable version manager with support for Java, Node.js, Flutter, .Net & more
a year agoapache-2.0JavaScript
🧶 Manage multiple versions of Yarn (deprecated)
3 years ago14May 15, 20218apache-2.0Go
Flutter Version Manager. Flutter 多版本管理工具。 本地缓存安装多个 Flutter 版本,随时快速切换
a year ago19September 13, 202114gpl-3.0Rust
🤏 Smol and simple node version manager written in rust 🦀
a year ago1apache-2.0Shell
A Simple Elasticsearch Version Manager
6 days ago1mitRust
A simple version manager tool for switching between different versions of commands
Alternatives To Asdf
Select To Compare

Alternative Project Comparisons

asdf Lint Tests

Manage multiple runtime versions with a single CLI tool, extendable via plugins - docs at

asdf is a CLI tool that can manage multiple language runtime versions on a per-project basis. It is like gvm, nvm, rbenv & pyenv (and more) all in one! Simply install your language's plugin!

Why use asdf?

  • single CLI for multiple languages
  • consistent commands to manage all your languages
  • single global config keeping defaults in one place
  • single .tool-versions config file per project
  • support for existing config files .node-version, .nvmrc, .ruby-version for easy migration
  • automatically switches runtime versions as you traverse your directories
  • simple plugin system to add support for your language of choice
  • shell completion available for common shells (Bash, Zsh, Fish, Elvish)


Please head over to the documentation site for more information!


See in the repo or the Contributing section on the docs site.

Community & Questions

  • FAQ
  • GitHub Issues GitHub Issues: report a bug or raise a feature request to the asdf core team
  • StackOverflow Tag StackOverflow Tag: see existing Q&A for asdf. Some of the core team watch this tag in addition to our helpful community

Ballad of asdf

Once upon a time there was a programming language
There were many versions of it
So people wrote a version manager for it
To switch between versions for projects
Different, old, new.

Then there came more programming languages
So there came more version managers
And many commands for them

I installed a lot of them
I learnt a lot of commands

Then I said, just one more version manager
Which I will write instead

So, there came another version manager
asdf version manager - asdf-vm/asdf

A version manager so extendable
for which anyone can create a plugin
To support their favourite language
No more installing more version managers
Or learning more commands

This was the mail I wrote to a few friends to tell them about the project. Thanks to @roshanvid for suggesting that this go into the readme
Popular Version Manager Projects
Popular Command Line Projects
Popular Runtime Environments Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Command Line
Fish Shell
Version Manager