awesome-repositories.com
Blog
MCP
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 creationix/nvm

Open-source alternatives to Creationix Nvm

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

  • 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
  • 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
  • tj/ntj avatar

    tj/n

    19,515View on GitHub↗

    n is a command line version manager and binary manager for the Node.js runtime environment. It functions as a runtime environment switcher, allowing for the installation and management of multiple Node.js versions to maintain compatibility across different projects. The tool orchestrates the downloading and caching of Node.js binaries from official or custom distribution mirrors. It enables switching between installed versions via a command line interface or interactive menu, providing the ability to execute scripts using specific versions from a local cache without performing a full system i

    Shell
    View on GitHub↗19,515

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
  • 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
  • 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
  • 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
  • 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
  • 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
  • eirslett/frontend-maven-plugineirslett avatar

    eirslett/frontend-maven-plugin

    4,368View on GitHub↗

    This project is a Maven plugin that integrates Node.js and npm build processes into the Java build lifecycle. It acts as a build orchestrator and environment manager, allowing the execution of npm scripts and frontend task runners during a Java project's build process. The plugin manages the downloading and extraction of specific Node.js and npm binaries into local project directories. This ensures consistent, cross-platform build environments by resolving binaries based on the host operating system and CPU architecture without modifying the global system state. It provides orchestration for

    Java
    View on GitHub↗4,368
  • jenv/jenvjenv avatar

    jenv/jenv

    6,621View on GitHub↗

    Manage your Java environment

    Shell
    View on GitHub↗6,621
  • cytopia/devilboxcytopia avatar

    cytopia/devilbox

    4,470View on GitHub↗

    Devilbox is a containerized development environment that provides a reproducible suite of web servers, databases, and language runtimes managed through a unified configuration. It functions as a Docker-based local development stack for LAMP and MEAN software stacks and as a manager for switching between different versions of these services to match specific project requirements. The system distinguishes itself by automating local network orchestration. It includes a Docker-based virtual host manager that automatically maps local directories to custom domains and a local DNS and SSL orchestrat

    PHP
    View on GitHub↗4,470
  • rust-lang/rustuprust-lang avatar

    rust-lang/rustup

    6,940View on GitHub↗

    rustup is a programming language toolchain manager that automates the installation, versioning, and configuration of the Rust compiler and its associated build tools. It serves as a toolchain installer and version manager, enabling the deployment of the language ecosystem across different operating systems. The system manages multiple compiler versions across stable, beta, and nightly release channels, allowing users to switch between these versions to meet different environment requirements. It also functions as a cross-compilation manager by installing pre-compiled standard libraries to bui

    Rust
    View on GitHub↗6,940
  • robotsandpencils/xcodesappRobotsAndPencils avatar

    RobotsAndPencils/XcodesApp

    8,432View on GitHub↗

    XcodesApp is a management utility for controlling Apple development toolsets. It serves as a version manager and runtime installer used to download, install, and switch between multiple versions of Xcode and their associated platform runtimes. The tool provides a way to browse available versions, release notes, and system compatibility requirements from official release channels. It utilizes accelerated connections to download specific versions of the development environment and its corresponding operating system runtimes and hardware variants. Users can assign a specific installed version a

    Swift
    View on GitHub↗8,432
  • schniz/fnmSchniz avatar

    Schniz/fnm

    24,020View on GitHub↗

    This utility is a command-line tool designed for managing multiple Node.js runtime versions on local development machines. It functions as a cross-platform manager that enables users to install, switch, and synchronize runtime versions across Windows, macOS, and Linux environments. The tool automates environment configuration by detecting project-specific version requirements through directory-traversal resolution. It maintains consistency by dynamically updating shell paths and environment variables, allowing for automatic version switching as users navigate between different project directo

    Rusthacktoberfestjavascriptnodejs
    View on GitHub↗24,020
  • 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
  • coreutils/coreutilscoreutils avatar

    coreutils/coreutils

    5,185View on GitHub↗

    This project is a comprehensive suite of essential command-line tools and standardized Unix-like utilities. It provides the fundamental building blocks for system administration, file management, and text processing on Unix-like systems, implementing a wide range of POSIX command-line tools. The collection is distinguished by its broad coverage of low-level system operations. This includes a complete toolkit for file system management, such as creating and modifying files and directories, and a specialized text processing toolkit for filtering, sorting, and transforming data streams. The pro

    C
    View on GitHub↗5,185
  • phpbrew/phpbrewphpbrew avatar

    phpbrew/phpbrew

    5,528View on GitHub↗

    Phpbrew is a PHP version manager and build tool used to compile and manage multiple versions of PHP from source within a local user directory. It provides a self-contained development environment that allows for installing and switching between different language versions without requiring root access. The system distinguishes itself by using a variant-driven build configuration, allowing users to compile binaries with specific feature sets, flags, and custom configuration options. It also functions as an extension manager that downloads, compiles, and activates third-party extensions from re

    Makefile
    View on GitHub↗5,528
  • zkat/npxzkat avatar

    zkat/npx

    2,623View on GitHub↗

    npx is a tool that combines Node version management, on-demand package running, caching installation, remote execution, and shell command fallback into a single interface. It functions as an npm package runner that executes binaries on demand without requiring a global or local install, while also serving as an on-demand package installer that downloads and caches packages automatically before running their commands. The tool distinguishes itself through its ability to install and use specific Node.js versions on the fly for executing commands or scripts, and by replacing the shell's default

    JavaScriptclinpmpackage-manager
    View on GitHub↗2,623
  • direnv/direnvdirenv avatar

    direnv/direnv

    15,189View on GitHub↗

    direnv is a shell environment manager and directory-based environment loader that automatically loads and unloads environment variables when switching between directories. It functions as a shell hook automation tool, injecting logic into the shell configuration to trigger environment updates based on the current project context. The project acts as a development environment isolator by localizing shell configurations, which prevents dependency conflicts and removes project-specific exports from global profile files. It includes specialized integration for Nix, allowing the loading of environ

    Go
    View on GitHub↗15,189
  • 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
  • supermanito/linuxmirrorsSuperManito avatar

    SuperManito/LinuxMirrors

    7,597View on GitHub↗

    LinuxMirrors is a collection of shell-based automation tools designed for managing Linux package mirrors, automating Docker engine deployment, and performing non-interactive system updates. It provides a package mirror configurator to update system repositories to regional mirrors across multiple distributions and an installation automator for the Docker engine and its associated software sources. The project distinguishes itself through a dual-mode execution model, offering both interactive menu-driven interfaces for manual setup and non-interactive flag-based execution for integration into

    Shellalmalinuxalpinearchlinux
    View on GitHub↗7,597
  • actions/setup-nodeactions avatar

    actions/setup-node

    4,655View on GitHub↗

    setup-node is a GitHub Action that downloads, installs, and configures a specified Node.js runtime in continuous integration workflows. It resolves version specifiers from semantic version ranges or aliases like "lts/*" against a remote manifest, selects the correct binary for the runner’s operating system and architecture, and can reuse previously installed versions from GitHub’s hosted tool cache. The action accelerates repeat workflow runs by caching global package dependencies using a lock file as the cache key, restoring them automatically on subsequent runs. It manages version resolutio

    TypeScript
    View on GitHub↗4,655
  • 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
  • rvm/rvmrvm avatar

    rvm/rvm

    5,192View on GitHub↗

    RVM is a Ruby version manager and build automation tool designed to install and switch between multiple versions of the Ruby interpreter on a single system. It serves as a dependency isolator and shell environment wrapper, allowing for the creation of named library sets to prevent version conflicts between different projects. The project distinguishes itself as a deployment orchestrator that automates the provisioning of Ruby runtimes across remote servers and build agents. It generates standalone executable wrappers to ensure specific runtimes and library sets are loaded for scheduled tasks,

    Shelljrubymri-rubymruby
    View on GitHub↗5,192
  • eriner/zimEriner avatar

    Eriner/zim

    4,632View on GitHub↗

    Zim is a Zsh configuration framework and environment manager designed to optimize shell performance and productivity. It serves as a plugin manager, prompt customizer, and performance optimizer that bundles themes and modules into a cohesive system. The framework distinguishes itself by using bytecode compilation to accelerate shell startup times and improve execution speed. It employs a modular system for installing, updating, and synchronizing external shell modules and scripts from local or remote sources. The project covers a broad range of capabilities, including developer workflow auto

    Shell
    View on GitHub↗4,632
  • sorin-ionescu/preztosorin-ionescu avatar

    sorin-ionescu/prezto

    14,552View on GitHub↗

    Prezto is a Zsh configuration framework and shell environment manager designed to organize environment variables, aliases, and startup scripts through a modular file structure. It functions as a plugin collection and prompt theme engine, utilizing Zsh-native scripting to manage shell behavior across different platforms. The framework distinguishes itself through a modular-based configuration and submodule-driven extensions, allowing users to load discrete functional modules and update core components via Git. It features a dedicated prompt engine that integrates repository metadata and system

    Shell
    View on GitHub↗14,552
  • 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
  • ivanmathy/boopIvanMathy avatar

    IvanMathy/Boop

    4,150View on GitHub↗

    Boop is a scriptable text scratchpad and developer productivity tool used for automating repetitive string formatting and data cleaning tasks. It functions as a JavaScript text transformer that processes plain text snippets through a library of custom functions. The tool features a hot-reloading script engine that refreshes JavaScript modules from disk at runtime, allowing text processing logic to be updated without restarting the application. The software provides a text transformation engine with a searchable script picker for locating and executing specific functions. It utilizes stateful

    JavaScriptapplicationboopdeveloper-tools
    View on GitHub↗4,150
  • pinokiocomputer/pinokiopinokiocomputer avatar

    pinokiocomputer/pinokio

    6,781View on GitHub↗

    Pinokio is a specialized toolset for discovering, launching, and managing verified open-source AI projects. It functions as an automated browser and orchestrator that downloads, configures, and runs complex machine learning projects through a simplified graphical interface. The system utilizes a curated application launcher that executes reviewed and frozen scripts to ensure software integrity and stability. It manages dependencies through a script-based environment manager that organizes software into isolated local directories to prevent conflicts with the global system environment. The pl

    JavaScript
    View on GitHub↗6,781