Awesome Lists

awesome-version-managers

by bernardoduarte

awesome listpushed over 2 years ago

A curated list of awesome Version Managers

AI summary

Version manager directory

A curated list of tools and software for managing different versions of programming languages and tools across various platforms.

stars
244
forks
18
watching
3
awesome list
1
entries
77
View on GitHub

Embed the badge

Show how many awesome lists link to your project. The count updates automatically.

Awesome Lists badge
Markdown
[![Awesome Lists Badge](https://awesome.facts.dev/shield/bernardoduarte/awesome-version-managers/links.svg)](https://awesome.facts.dev/awesome/bernardoduarte/awesome-version-managers)
HTML
<a href="https://awesome.facts.dev/awesome/bernardoduarte/awesome-version-managers"><img src="https://awesome.facts.dev/shield/bernardoduarte/awesome-version-managers/links.svg" alt="Awesome Lists Badge" /></a>
Image URL
https://awesome.facts.dev/shield/bernardoduarte/awesome-version-managers/links.svg

What's in the list

77 links in 29 sections, with live GitHub stats.activeno commit in 2y

Version Managers / Generic

  • anyenv

    A version manager wrapper allowing maintenance of multiple version managers

  • aqua

    Declarative CLI Version manager written in Go. Support Lazy Install, Registry, and continuous update with Renovate. CLI version is switched seamlessly

  • asdf-vm

    An extendable version manager using a plugin structure to handle new version managers

  • mise

    An drop-in replacement written in Rust

  • proto

    A pluggable next-generation version manager for multiple programming languages as unified toolchain

  • vfox

    A cross-platform, extensible version manager. It supports native Windows and Unix-like

  • woof

    A Bash-based version manager with plugin support optimized for UX

  • spack

    A flexible package manager that supports multiple versions, configurations, platforms, and compilers

  • pkgx

    A blazingly fast, standalone, cross‐platform binary that runs anything in any version with zero system impact

  • vmr

    A simple, cross-platform, and well-tested version manager for programming languages and tools

Version Managers / Python

  • pyenv

    A tool that allows you to switch between multiple versions of Python

  • pyenv-win

    A porting of pyenv for Windows

  • pyflow

    A multipurpose Python environment manager

  • pythonz

    A program to automate the building and installation of Python versions

Version Managers / Node.js

  • fnm

    Fast and simple Node.js version manager built in Rust

  • nvm

    A version manager for Node.js, designed to be installed per user, and invoked per shell

  • nvm-windows

    Same of nvm, but for Windows

  • n

    An interactive manager that has no subshells and no profile setup

  • volta

    A JavaScript tool manager, designed to provide seamless, fully isolated node environments

  • nodenv

    A tool that can automatically select the appropriate node version for a given project and doesn't require shell integration or overriding of builtin commands

  • nvs

    A cross-platform utility for switching between different versions and forks of Node.js

  • nodebrew

    A simple Node.js version manager

  • nve

    Run any command on specific Node.js versions

  • chnode

    A lightweight Node.js version switcher that allows for auto-switching by updating the PATH, inspired by chruby

  • pnpm

    A fast and disk space efficient package manager that can also manage Node.js versions via it's env command

  • nvm-rust

    A cross platform Node.js version manager made in Rust

Version Managers / Ruby

  • rbenv

    A manager that focus on switching Ruby versions

  • rbenv-win

    A porting of rbenv to Windows

  • rvm

    A tool that is loaded into the shell, overrides some commands and also manages gemsets

  • uru

    A lightweight, multi-platform command line tool that helps you use the multiple rubies, like MRI, JRuby and Rubinius

  • chruby

    A Ruby version switcher that allows for auto-switching, updates PATH and has around 100 lines of code

  • frum

    A fast and modern Ruby version manager written in Rust that is also cross-platform

Version Managers / Go

  • gvm

    An interface to manage Go versions

  • goenv

    Version manager like pyenv and rbenv, but for Go

  • g

    A simples Go version manager inspired by

  • g

    A command-line tool for Linux, macOS, and Windows that provides convenient management and switching of multiple versions of the Go environment

  • goup

    An elegant version manager written in Go that is installed with a one-liner and that work well on all Linux distros

Version Managers / Rust

  • rustup

    A manager that installs Rust from official release channels and allows to switch between stable, beta, and nightly compilers

Version Managers / Java

  • jenv

    A cross-platform tool for managing parallel Versions of JDKs which allows for installing, switching, removing and listing candidates

  • jEnv

    A version switcher for Java that does not handle installation

  • jabba

    A cross-platform Java manager that allows for installation and switching of JDKs

  • jvms

    A JDK version manager for Windows made in Go

Version Managers / JVM

  • SDKMAN!

    Install Software Development Kits for the JVM such as Java, Scala, Kotlin and Groovy. Ant, Gradle, Grails, Maven, SBT, Spark, Spring Boot, Vert.x and many others also supported

Version Managers / Swift

  • swiftenv

    A Swift manager that changes version per user, set a per-project version and allows you to override the version with an environmental variable

  • swiftly

    A CLI tool for installing, managing, and switching between Swift toolchains, written in Swift

Version Managers / PHP

  • phpbrew

    A utility that builds and installs multiple version of PHP in your HOME directory allowing of switching between them

  • phpenv

    A version manager that operates binaries on the user directory and utilizes shims

Version Managers / Perl

  • perlbrew

    A tool that manages multiple Perl environments and allows switching between them

  • plenv

    A manager that installs multiple versions on the home directory, uses shims and allows to set local version per directory

Version Managers / Lua

  • luaver

    A helper to manage and switch between different versions of Lua, LuaJIT and Luarocks

  • lenv

    A Lua version manager that allows installation and switching between multiple versions

Version Managers / Elixir

  • kiex

    A utility that allows build and switch between different Elixir versions

  • exenv

    A Elixir version manager based on rbenv

Version Managers / Erlang

  • evm

    A tool that allows you to install multiple versions of erlang on your system and switch between them

  • kerl

    A POSIX shell tool for building and installing Erlang/OTP instances allowing for easy switches between those installations

Version Managers / Julia

  • juliavm

    A CLI tool which allows you to install, manage, and work with Julia environments and switch between them

  • jlenv

    A Julia version manager based on rbenv

Version Managers / Crystal

  • crenv

    A Crystal version manager based on rbenv

Version Managers / Flutter

  • fvm

    A version manager allowing to reference Flutter SDK version on a per-project basis, allows you to have multiple versions installed

Version Managers / Scala

  • svm

    A version manager that switches and installs multiple Scala versions

Version Managers / Terraform

  • tfenv

    A Terraform version manager inspired by rbenv

Version Managers / OpenTofu

  • tofuenv

    A OpenTofu version manager inspired by tfenv

  • tenv

    A versatile version manager for OpenTofu, Terraform and Terragrunt, written in Go

Version Managers / Solidity

  • svm-rs

    A Solidity compiler version manager made in Rust

Version Managers / Xcode

  • xcodes

    A command-line tool to install and switch between multiple versions of Xcode

  • Xcodes.app

    An app that offers the easiest way to install and switch between multiple versions of Xcode

Version Managers / CMake

  • cvm

    A cross platform command-line tool that help manage currently installed versions of CMake

Version Managers / Unity

  • uvm

    A tool which allows to install and manage multiple Unity versions on a system from the command-line that is also compatible with Unity-Hub

Version Managers / Godot

  • Godots

    An app that manages your Godot versions and projects with support for all platforms while also allowing for theming

  • Godot Manager

    An app made in C# that can manage the engine versions of Godot from the official Github repository, as well as getting updates from new releases

  • Hourglass

    A project manager that can also manage multiple versions of Godot engine with just a few clicks and that supports custom engine builds

  • GVM

    A simple app that can install and remove any version of Godot, even the alpha, beta, rc and dev versions

Version Managers / R

  • rig

    A cross platform R version manager with no system requirements on any platform

Version Managers / Zig

  • zvm

    A version manager made in Go that works on Linux, BSD, MacOS, *nix systems including Windows

  • zigup

    A Zig version manager made entirely with Zig

Version Managers / Neovim

  • bob

    A cross-platform and easy-to-use Neovim version manager, allowing for easy switching between versions right from the command line

Version Managers / Lean

  • elan

    A small tool for managing your installations of the Lean theorem prover that is also the recommended way to set up in their documentation

More related projects

Add a GitHub project

Missing a project or an awesome list? Paste its GitHub URL and we fetch it right away.