awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
moovweb avatar

moovweb/gvm

0
View on GitHub↗
11,645 stars·579 forks·Shell·MIT·15 viewsgithub.com/moovweb/gvm↗

Gvm

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, and the ability to compare installation files across different software versions. It also includes utilities for specific version uninstallation and full system cleanup.

Features

  • Version Managers - Enables installing, removing, and switching between different versions of the Go programming language on a single system.
  • Dependency Isolation Tools - Utilizes custom path configurations to isolate Go-specific dependencies and prevent conflicts between projects.
  • Binary Dependency Bootstrapping - Provides automated installation of pre-compiled Go binaries to quickly establish functional runtime environments.
  • Package Dependency Managers - Provides capabilities to create, delete, and switch between isolated dependency environments for project-specific libraries.
  • Runtime Version Switching - Updates current environment paths and root variables to switch the active Go language version instantly.
  • Shell Environment Managers - Modifies current shell process memory and environment variables to switch active Go versions without rebooting.
  • Shell Path Overlays - Updates shell environment variables to prioritize specific Go version directories over the global system path.
  • Environment Orchestration - Updates shell paths and environment variables to target specific Go releases and native library hierarchies.
  • Multi-Version Installations - Downloads and installs specific Go language versions using binaries for rapid runtime bootstrapping.
  • Isolated Runtime Directories - Stores different Go versions in separate directory hierarchies to prevent binary and package conflicts.
  • Environment-Mapped Vendoring - Isolates native code dependencies by mapping specific directory structures to active environment variables.
  • Remote Version Discovery - Queries remote API manifests to discover and list available Go releases for local installation.
  • Runtime Version Removal - Provides the ability to remove specific Go language installations from the system to reclaim disk space.
  • Linked Dependency Management - Manages local references and environment variables to link native code dependencies without altering the host OS.
  • Go Development Workflows - Facilitates rapid bootstrapping and testing across different Go release targets using specific binaries.
  • Infrastructure Tools - Manages multiple Go language versions.
  • Version Management - Go version manager.

Star history

Star history chart for moovweb/gvmStar history chart for moovweb/gvm

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

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

Start searching with AI

Open-source alternatives to Gvm

Similar open-source projects, ranked by how many features they share with Gvm.
  • 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
  • creationix/nvmcreationix avatar

    creationix/nvm

    93,948View on GitHub↗

    nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and runtime orchestrator for installing, switching, and managing multiple versions of the Node.js runtime on POSIX systems. The tool allows for the automation of runtime switching by reading configuration files in project directories to select the required version. It supports the management of long-term support releases and the migration of global packages between different installed versions of the runtime. The project covers broader capabilities including runtime management throug

    Shell
    View on GitHub↗93,948
  • 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
  • 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
See all 30 alternatives to Gvm→

Frequently asked questions

What does moovweb/gvm do?

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.

What are the main features of moovweb/gvm?

The main features of moovweb/gvm are: Version Managers, Dependency Isolation Tools, Binary Dependency Bootstrapping, Package Dependency Managers, Runtime Version Switching, Shell Environment Managers, Shell Path Overlays, Environment Orchestration.

What are some open-source alternatives to moovweb/gvm?

Open-source alternatives to moovweb/gvm include: rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… creationix/nvm — nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and… sstephenson/rbenv — rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a… sdkman/sdkman-cli — SDKMAN is a command-line utility for installing, tracking, and managing multiple versions of software development kits… pyenv-win/pyenv-win — pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions…