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
sstephenson avatar

sstephenson/rbenv

0
View on GitHub↗
16,711 stars·1,428 forks·Shell·MIT·28 viewsrbenv.org↗

Rbenv

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 download and compile specific Ruby versions. It also features a plugin system that enables the addition of custom commands and scripts to modify the runtime workflow.

Features

  • Command Interception Shims - Intercepts executable calls using lightweight shell shims to route requests to the currently active Ruby version.
  • Shell Environment Managers - Manages the shell environment by injecting shims into the system path to route command execution.
  • Version Managers - Provides a system for installing, switching, and managing multiple versions of the Ruby runtime.
  • Language Environment Coordination - Coordinates multiple installed Ruby versions using shell shims to ensure the correct binary is executed.
  • Language Runtime Administration - Manages multiple Ruby installations and automates version selection based on the current directory.
  • Ruby Version Managers - Provides comprehensive management of multiple Ruby versions and directory-based version switching.
  • Environment Isolation - Ensures each application runs with its own specific Ruby version to maintain environment consistency.
  • Multi-Version Installations - Downloads and compiles specific versions of Ruby into isolated managed directories.
  • Directory-Based Version Resolution - Provides automatic Ruby version switching by detecting configuration files within the project directory hierarchy.
  • Isolated Runtime Directories - Stores separate Ruby versions in independent directories to prevent binary conflicts on the local file system.
  • Environment Path Injections - Modifies the system path to prioritize the shim directory, ensuring the selected Ruby version is executed.
  • Extensible Command-Line Interfaces - Functions as an extensible command-line framework for modifying how language environments are managed.
  • Plugin Systems - Ships a plugin system for adding new commands and customizing internal mechanisms using external scripts.
  • Plugin-Based Architectures - Implements a plugin architecture that allows extending core functionality by loading external scripts from a dedicated directory.
  • Environment Management - Manage multiple Ruby versions for different projects.

Star history

Star history chart for sstephenson/rbenvStar history chart for sstephenson/rbenv

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

Frequently asked questions

What does sstephenson/rbenv do?

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.

What are the main features of sstephenson/rbenv?

The main features of sstephenson/rbenv are: Command Interception Shims, Shell Environment Managers, Version Managers, Language Environment Coordination, Language Runtime Administration, Ruby Version Managers, Environment Isolation, Multi-Version Installations.

What are some open-source alternatives to sstephenson/rbenv?

Open-source alternatives to sstephenson/rbenv include: rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a… yyuu/pyenv — pyenv is a Python version manager and runtime orchestrator that allows for the installation and switching of multiple… pyenv-win/pyenv-win — pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions… moovweb/gvm — Gvm is a Go version manager, environment orchestrator, and dependency isolator. It provides a system for installing,… creationix/nvm — nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and…

Open-source alternatives to Rbenv

Similar open-source projects, ranked by how many features they share with Rbenv.
  • 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
  • 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
  • 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
  • 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
  • See all 30 alternatives to Rbenv→