awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to asdf-vm/asdf

Open-source alternatives to Asdf

30 open-source projects similar to asdf-vm/asdf, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Asdf alternative.

  • sstephenson/rbenvsstephenson avatar

    sstephenson/rbenv

    16,711View on GitHub↗

    rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby versions on a single machine and coordinates the selection of the active version based on the current directory or shell session. The tool functions as an extensible command line framework that intercepts executable calls using shell shims. These shims route requests to the selected language version, ensuring environment isolation by storing binaries in independent directories. The system includes capabilities for language runtime administration, including the ability to downlo

    Shell
    View on GitHub↗16,711
  • jdx/misejdx avatar

    jdx/mise

    29,929View on GitHub↗

    Mise is a development environment orchestrator that manages software runtimes, environment variables, and task execution. It functions as a version manager and task runner, providing a unified interface to synchronize project-specific configurations and dependencies across different machines. By automating the installation and switching of tools, it ensures that development environments remain consistent and reproducible. The project distinguishes itself through a hierarchical configuration system that automatically discovers settings by traversing the directory tree. It uses shim-based comma

    Rust
    View on GitHub↗29,929
  • yyuu/pyenvyyuu avatar

    yyuu/pyenv

    44,899View on GitHub↗

    pyenv is a Python version manager and runtime orchestrator that allows for the installation and switching of multiple Python versions on a single machine without affecting the system installation. It functions as a shell-based version controller that manages binaries through shims to redirect executable calls to specific versions. The tool is a plugin-extensible system, allowing users to add custom subcommands and logic via shell script plugins. This architecture enables the extension of the command line interface through a dedicated plugins directory. It provides capabilities for side-by-si

    Shell
    View on GitHub↗44,899

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • python-poetry/poetrypython-poetry avatar

    python-poetry/poetry

    34,282View on GitHub↗

    Poetry is a comprehensive dependency manager and packaging tool for Python projects. It functions as a configuration engine that resolves complex dependency graphs, manages isolated virtual environments, and ensures reproducible builds through deterministic lock file generation. By centralizing project metadata and build requirements into a single configuration file, it provides a unified workflow for managing the entire lifecycle of a Python codebase. The project distinguishes itself through its constraint-based solver, which evaluates environment markers and version requirements to maintain

    Pythondependency-managerpackage-managerpackaging
    View on GitHub↗34,282
  • rbenv/rbenvrbenv avatar

    rbenv/rbenv

    16,710View on GitHub↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    View on GitHub↗16,710
  • volta-cli/voltavolta-cli avatar

    volta-cli/volta

    13,009View on GitHub↗

    Volta is a cross-platform toolchain orchestrator and JavaScript toolchain manager. It functions as a version manager for Node.js and related package managers, allowing for the installation and coordination of multiple runtimes across a system. The project operates as a project-based version switcher, automatically detecting and switching to the required tool versions based on the current directory. This ensures environment consistency across different developer machines by resolving versions through project configuration.

    Rustnodenodejspackage-manager
    View on GitHub↗13,009
  • sdkman/sdkman-clisdkman avatar

    sdkman/sdkman-cli

    6,791View on GitHub↗

    SDKMAN is a command-line utility for installing, tracking, and managing multiple versions of software development kits on Unix systems. It functions as a software installer and environment manager that automates the downloading and configuration of development tools for Linux and macOS. The tool enables the installation of parallel SDK versions on a single system and provides the capability to toggle between them to change the active environment for a shell session. It specifically facilitates the setup of Java development environments, including the management of various Java Development Kit

    Shell
    View on GitHub↗6,791
  • nodejs/corepacknodejs avatar

    nodejs/corepack

    3,517View on GitHub↗

    Corepack is a Node.js package manager orchestrator and deterministic tool installer. It manages and enforces specific versions of package managers to ensure consistent environments across different machines, developers, and continuous integration systems. The project uses executable wrapper shims to intercept commands, allowing it to automatically download and run the correct tool version based on project configuration. It provides an offline binary provisioner that prepares package manager binaries into tarball archives for deployment in air-gapped environments. The system handles semantic

    TypeScriptnodejsnpmpnpm
    View on GitHub↗3,517
  • lewagon/dotfileslewagon avatar

    lewagon/dotfiles

    21,766View on GitHub↗

    This is a Unix dotfiles repository that provides a central store of configuration files to synchronize application settings and environment variables across different systems. It functions as a standardized development environment setup, offering a consistent profile for code editors, debuggers, and language runtimes across multiple machines. The repository includes specific configuration profiles for shell environments, Git identity and commit authorship, and SSH agent automation for secure credential management. It manages the loading of identity files and integrates system keychains to aut

    Shell
    View on GitHub↗21,766
  • version-fox/vfoxversion-fox avatar

    version-fox/vfox

    3,910View on GitHub↗

    Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a single machine. It provides a unified interface for installing, switching, and configuring software versions across different operating systems, ensuring consistent development environments. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of diverse language runtimes and utilities beyond built-in defaults. It utilizes a combination of shim-based execution, symlink management, and dynamic shell-hook environment injecti

    Goasdfbashcli
    View on GitHub↗3,910
  • pyenv/pyenvpyenv avatar

    pyenv/pyenv

    44,895View on GitHub↗

    This project is a command-line tool designed to manage multiple isolated language runtime versions on a single development machine. It enables users to install, switch between, and maintain different runtime versions, ensuring that project-specific requirements are met without conflicting with system-wide software. The tool distinguishes itself through a shim-based execution environment that intercepts system calls and dynamically routes them to the correct runtime version based on the current directory. By traversing the file system hierarchy to locate configuration files, it automatically a

    Shellpythonshell
    View on GitHub↗44,895
  • xcodesorg/xcodesappXcodesOrg avatar

    XcodesOrg/XcodesApp

    8,431View on GitHub↗

    XcodesApp is a desktop application and version manager for the Xcode integrated development environment. It functions as a macOS development tool that enables the installation, updating, and switching of multiple Xcode versions. The application automates the process of downloading and deploying specific software versions and metadata. It provides a metadata browser to view available releases, release notes, and operating system compatibility requirements. The tool manages the installation of platform runtimes and SDKs for iOS, macOS, watchOS, and tvOS. It allows users to select and toggle th

    Swiftcombinehacktoberfestmacos
    View on GitHub↗8,431
  • pdm-project/pdmpdm-project avatar

    pdm-project/pdm

    8,647View on GitHub↗

    PDM is a Python package manager, dependency resolver, and build tool designed to create reproducible environments. It functions as a runtime manager that installs and switches between different versions of the Python interpreter using standalone builds, while managing isolated virtual environments to prevent version conflicts between projects. The tool distinguishes itself through the use of cross-platform lockfiles and a plugin-based extension architecture, allowing users to add new capabilities via external distributions. It provides a centralized package caching system and a parallel insta

    Python
    View on GitHub↗8,647
  • nushell/nushellnushell avatar

    nushell/nushell

    39,743View on GitHub↗

    Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating systems. What distinguishes the project is its focus on interactive data exploration and modular extensibility. Users can quer

    Rustnushellrustshell
    View on GitHub↗39,743
  • derailed/k9sderailed avatar

    derailed/k9s

    33,983View on GitHub↗

    This project is a terminal-based dashboard for managing Kubernetes clusters. It provides a character-based interface that enables real-time monitoring and interactive control of containerized workloads, allowing users to perform administrative tasks such as scaling deployments, viewing logs, and managing port forwarding directly from the command line. The interface is designed for high-speed navigation, utilizing a keyboard-driven command system that maps input sequences to specific operational actions. It maintains an accurate view of the cluster state through asynchronous event polling, ens

    Gogogolangk8s
    View on GitHub↗33,983
  • spf13/cobraspf13 avatar

    spf13/cobra

    44,107View on GitHub↗

    Cobra is a development framework for building command-line applications in Go. It organizes application logic into a hierarchical tree structure where each node represents a command, complete with its own flags and execution logic. This structure allows developers to build complex, nested command interfaces that mirror business domains while maintaining a clean separation between command orchestration and underlying business logic. The framework distinguishes itself through its declarative approach to metadata and configuration. It automatically derives help documentation, usage instructions,

    Goclicli-appcobra
    View on GitHub↗44,107
  • moovweb/gvmmoovweb avatar

    moovweb/gvm

    11,645View on GitHub↗

    Gvm is a Go version manager, environment orchestrator, and dependency isolator. It provides a system for installing, removing, and switching between different versions of the Go programming language on a single machine. The tool manages native dependencies and creates isolated package sets to prevent version conflicts between different project environments. It uses environment variable overlays and directory isolation to link native code without modifying the host operating system. The software covers the full language lifecycle, including remote version cataloging, active version switching,

    Shelldependency-managergolang
    View on GitHub↗11,645
  • coreybutler/nvm-windowscoreybutler avatar

    coreybutler/nvm-windows

    46,816View on GitHub↗

    This project is a command-line utility designed to manage multiple runtime versions on a single machine. It enables developers to install, remove, and toggle between different versions to satisfy project-specific dependency requirements, ensuring that each environment remains isolated to prevent version conflicts or path overlaps. The tool functions by storing distinct runtime versions in separate, isolated directories and utilizing symbolic links to point to the currently active version. It orchestrates these file system operations through a unified command-line interface that modifies syste

    Gogomanagementnode
    View on GitHub↗46,816
  • voidzero-dev/vite-plusvoidzero-dev avatar

    voidzero-dev/vite-plus

    5,007View on GitHub↗

    vite-plus is a unified web development toolchain and command line interface designed to manage Vite builds, JavaScript runtimes, and package managers from a single entry point. It functions as a JavaScript runtime manager for installing and pinning language versions, a monorepo task orchestrator for dependency-aware script execution, and a project scaffolding engine for bootstrapping applications and libraries. The project distinguishes itself by consolidating a full development lifecycle into one tool, featuring a unified static analysis engine that performs type-checking, linting, and forma

    Rust
    View on GitHub↗5,007
  • leokhoa/laragonleokhoa avatar

    leokhoa/laragon

    5,220View on GitHub↗

    Laragon is a portable web server suite and WAMP stack manager that provides a self-contained local development environment. It enables the bootstrapping of web applications through the orchestration of web servers, databases, and language runtimes on a single machine. The project is distinguished by its registry-free portable mode, allowing the entire development stack to be moved between drives or computers without re-installation. It features automated virtual host mapping and SSL certificate generation for local domains, as well as a local tunneling gateway to expose projects via public UR

    PHP
    View on GitHub↗5,220
  • thoughtbot/laptopthoughtbot avatar

    thoughtbot/laptop

    8,554View on GitHub↗

    Laptop is a macOS development environment bootstrapper and system configuration script. It functions as a development toolchain automator designed to install and configure the programming languages, databases, and utilities required for web and mobile development. The project automates workstation provisioning by deploying a curated suite of software dependencies through a sequential shell execution process. It integrates package management and version-manager orchestration to handle multiple programming language runtimes and library dependencies. The system supports environment customizatio

    Shell
    View on GitHub↗8,554
  • macdao/ocds-guide-to-setting-up-macmacdao avatar

    macdao/ocds-guide-to-setting-up-mac

    4,550View on GitHub↗

    This project is a comprehensive guide for configuring macOS for software engineering. It provides instructions for setting up a development environment, optimizing system settings, and enhancing the terminal experience to increase productivity. The guide focuses on several core areas of system customization, including the automation of software installation via Homebrew and the configuration of the Zsh shell with plugins, themes, and productivity aliases. It details a strategy for managing dotfiles using symbolic links to synchronize configuration files across multiple machines. Additional c

    View on GitHub↗4,550
  • pyenv-win/pyenv-winpyenv-win avatar

    pyenv-win/pyenv-win

    7,006View on GitHub↗

    pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions without affecting the system global installation. It functions as a multi-version installer and environment controller that ensures isolation and reproducibility across different projects. The tool uses a shim-based routing system to intercept executable calls and direct them to specific versioned binaries. This allows for both system-wide default configurations and local directory-level overrides, where a specific version is automatically activated when entering a project folder

    VBScriptpyenvpyenv-alternativepyenv-for-windows
    View on GitHub↗7,006
  • leoafarias/fvmleoafarias avatar

    leoafarias/fvm

    5,465View on GitHub↗

    fvm is a version manager and orchestrator for the Flutter and Dart software development kits. It enables the installation and management of multiple SDK versions on a single machine, allowing different projects to run on different versions simultaneously to avoid conflicts. The tool provides mechanisms for pinning specific SDK versions to projects via configuration files, ensuring that all collaborators and build environments use an identical toolset. It also supports the use of custom SDK forks hosted in external repositories instead of official channels. Beyond local development, it serves

    Dartclidartflutter
    View on GitHub↗5,465
  • moonrepo/moonmoonrepo avatar

    moonrepo/moon

    3,687View on GitHub↗

    Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It functions as a dependency graph orchestrator that executes build targets in topological order and utilizes input hashing to cache results and skip redundant work. The project features a polyglot toolchain manager that automates the installation and versioning of language runtimes and CLI tools to ensure environment consistency. It also includes a plugin framework based on WebAssembly, allowing developers to extend build logic and toolchain behavior using any supported language.

    Rustbuild-systembuild-toolbun
    View on GitHub↗3,687
  • gvcgo/version-managergvcgo avatar

    gvcgo/version-manager

    1,332View on GitHub↗

    This project is a command-line utility designed to manage development environments by installing, switching, and pinning multiple versions of programming languages, SDKs, runtimes, and database engines. It functions as a centralized controller for complex toolchains, ensuring that specific software versions are maintained consistently across different machines and project directories. The tool distinguishes itself through an interactive terminal interface that allows users to browse and select software versions visually, reducing the need to memorize complex command-line arguments. It also pr

    Goasdf-vmcondacross-platform
    View on GitHub↗1,332
  • scoopinstaller/scoopScoopInstaller avatar

    ScoopInstaller/Scoop

    23,635View on GitHub↗

    Scoop is a command-line package manager for Windows designed to automate the installation, configuration, and lifecycle management of software. It utilizes a manifest-driven architecture where applications are defined in structured text files, allowing for consistent and repeatable deployments. By leveraging shim-based path management and symlink-based version switching, it enables users to install and toggle between multiple software versions without cluttering the global system environment. The project distinguishes itself through its focus on portability and clean system integration. It su

    PowerShellinstallerpowershellscoop
    View on GitHub↗23,635
  • php/php-srcphp avatar

    php/php-src

    40,150View on GitHub↗

    This project is the core source code for a general-purpose, server-side scripting language designed for web development. It provides a high-performance execution engine that parses and runs scripts to generate dynamic content, supported by a comprehensive standard library for data manipulation, networking, and system interaction. The repository serves as an open-source development platform where the language runtime and its interpreter are built, maintained, and evolved through community-driven governance. The runtime is powered by a stack-based virtual machine that executes compiled bytecode

    C
    View on GitHub↗40,150
  • pyenv/pyenv-virtualenvP

    pyenv/pyenv-virtualenv

    6,733View on GitHub↗

    pyenv-virtualenv is a plugin for pyenv that creates and manages isolated Python virtual environments on Unix-like systems. It functions as an environment orchestrator that extends the core version switching system to provide project isolation. The tool automates the activation and switching of Python environments based on the current working directory. It also includes a bridge for managing and interacting with Conda environments through the pyenv interface. The project covers the full lifecycle of environment management, including the creation, listing, and deletion of isolated environments

    Shell
    View on GitHub↗6,733
  • doomemacs/doomemacsdoomemacs avatar

    doomemacs/doomemacs

    22,264View on GitHub↗

    This project is a modular configuration framework for the Emacs text editor, designed to provide optimized defaults and a curated ecosystem of plugins. It functions as a comprehensive environment that structures complex editor settings into a reproducible and stable workspace. The framework distinguishes itself through a declarative package management system that pins dependencies to ensure consistency across different machines. It incorporates a modal editing layer that replicates keyboard-driven navigation and text manipulation workflows, alongside a rule-based engine that automates the lif

    Emacs Lispdoom-emacsemacsemacs-configuration
    View on GitHub↗22,264