30 open-source projects similar to rbenv/ruby-build, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
ruby-build is a system for downloading, compiling, and installing specific versions of the Ruby language from source on Unix-like systems. It functions as a source compiler and version installer that manages the deployment of Ruby runtimes without relying on system packages. The tool supports custom Ruby compilation by allowing the application of patches to the source code before the compilation process begins. It also provides the ability to use external build definitions for versions not included by default. The installation pipeline includes package integrity verification using checksums
CUE is a constraint-based configuration language designed for data validation, schema definition, and code generation. At its core, it unifies types and values into a single concept, enabling compile-time validation that catches structural and value errors before runtime. The language treats data and constraints as the same thing, allowing a single definition to serve as both a schema and concrete configuration data. CUE distinguishes itself through its constraint-based unification engine, which combines multiple configuration sources into a single coherent result by merging their constraints
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
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,
Cinder is a high-performance Python runtime implementation based on CPython. It is designed as an execution environment optimized for large-scale distributed systems and cloud environments. The project integrates a distributed memory cache and an asynchronous memory layer to manage data across multiple network nodes. It also provides a native C extension framework for developing high-performance compiled modules that link directly into the interpreter memory space. The system covers capabilities for asynchronous data retrieval, large-scale execution, and the integration of embedded scripting
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
Gophernotes is a backend implementation of the Jupyter kernel protocol and an interactive runtime that enables the execution of Go language code within notebook environments. It serves as a Go language execution engine, allowing users to integrate Go into polyglot notebooks such as Jupyter and nteract. The project supports the creation of documents that combine executable source code with rich media. It maps internal data types to various formats, including HTML, JSON, LaTeX, PDF, and images, to provide visual representations of execution results. The system covers a range of capabilities in
Util-linux is a collection of essential command-line tools and system administration binaries designed for managing core Linux operating system functions and hardware. It provides a suite of low-level programs that interact directly with the Linux kernel to configure system resources and perform standard administrative tasks on Unix-like operating systems. The project is built upon a modular architecture where independent, loosely coupled binaries share common libraries to minimize resource usage. It adheres to standard system programming interfaces to ensure portability and stability across
env is a Go library that reads environment variables and populates the fields of a Go struct according to tag directives. It uses reflection to iterate over struct types and tags at runtime, mapping environment variable names to struct fields and applying parsing behavior defined in struct tags. The library supports required field validation, returning errors when marked fields are missing or empty after parsing. It also provides default value fallback from struct tags when environment variables are not set, environment variable expansion that recursively substitutes references within values,
Mina is a Git-based remote deployer and SSH deployment automation tool designed to manage application releases. It functions as a symlink-based release manager that clones source code from Git repositories directly onto servers and is specifically designed to handle Ruby project deployment and environment configuration. The system automates server updates by generating a single bash script locally and executing it over a single SSH session. This approach enables zero-downtime deployments by using timestamped release directories and updating a symbolic link to switch between active and previou
phpdotenv is a PHP environment variable loader and configuration parser. It reads key-value pairs from files and populates them into PHP system environment variables and global arrays to avoid hardcoding sensitive settings in code. The project includes a configuration variable interpolator to resolve nested references and variables within environment files. It also provides an environment variable validator to ensure required variables exist and match specific data types or values. The system covers application secret management, multi-environment deployment, and the parsing of raw configura
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
This project is a Zsh prompt theme that provides a segmented, breadcrumb-style interface in the terminal. It uses a Powerline design with special glyphs and color blocks to display contextual information such as the current directory, user identity, and Git status. The theme allows users to rearrange and toggle visual metadata segments via environment variables. It specifically integrates Git status monitoring to indicate the current branch and repository state directly within the command line. The system manages shell state by rendering real-time system information, including root privilege
Implementation of a bulletproof node.js API 🛡️
Dynaconf is a configuration management library for Python applications that provides a unified system for loading, validating, and managing settings. It aggregates configuration data from multiple files, environment variables, and external stores into a single object using a defined precedence order. The project distinguishes itself through a layered environment manager that separates settings into distinct profiles, such as development and production. It includes a declarative validation framework to enforce data rules and type constraints during the loading process, as well as an external s
This project is a JavaScript logging utility and namespace-based debugger used for printing formatted, color-coded debug messages to the console in Node.js, web browsers, and Deno. It serves as a console output formatter and execution time profiler to help identify bugs and track program flow. The system manages debug visibility through named namespaces, allowing specific groups of messages to be enabled or disabled via environment variables. It distinguishes different modules in the output stream by assigning specific colors to these namespaces. The utility includes capabilities for measuri
This project is a hardware core and board support package that integrates STM32 microcontrollers into the Arduino development environment. It functions as an embedded systems development tool, bridging high-level programming workflows with ARM Cortex-M microcontroller architectures. The core provides the necessary configuration files and libraries to enable the compilation and deployment of firmware directly onto STM32 hardware. By mapping standard programming functions to specific microcontroller register operations, it ensures consistent behavior across different hardware platforms while ut
This library is a PHP environment variable loader and configuration parser. It extracts key-value pairs from local text files to populate global server and system environment arrays, ensuring that sensitive credentials and application settings remain separate from the source code. The tool implements twelve-factor app configuration principles by mapping local files to process-level variables. It utilizes a regex-based parser to identify variable assignments while stripping comments and whitespace, and it includes guards to prevent local configuration files from overwriting existing host-level
This project is a collection of guides and configurations for initializing a macOS development environment. It provides a systematic approach to installing programming languages, editors, and system tools to prepare a new Mac for coding from scratch. The setup focuses on automating the lifecycle of command line tools and applications through system package management. It emphasizes version-isolated language runtimes for Node.js and Python, allowing for the management of multiple versions and the creation of project-specific virtual environments to prevent dependency conflicts. The project co
Gizmo is a microservice development toolkit and HTTP server framework designed for building distributed services. It provides a collection of libraries for managing service lifecycles, including standardized configuration, logging, and health checks. The toolkit includes a PubSub messaging interface that abstracts the publishing and consuming of messages across different brokers and HTTP endpoints, featuring built-in mocking for integration testing. It also provides a security layer for validating inbound authentication tokens using public key signatures and custom decoders. The project cove
gptme is a multi-agent orchestration platform designed for autonomous software engineering, terminal-based AI integration, and RAG-enhanced code navigation. It enables the deployment of persistent agents and specialized subagents to decompose complex tasks and execute parallel technical workflows. The system distinguishes itself through a combination of vision-based GUI automation for controlling desktop applications and surgical patching mechanisms for targeted source code modifications. It utilizes git-based memory management to maintain a versioned history of agent identities, lessons, and
This is a configuration manager for Node.js applications that handles hierarchical settings across different deployment environments. It functions as an environment-based loader and settings parser that merges default configurations with overrides based on the current runtime context and hostname. The project distinguishes itself through a priority-based merge strategy that incorporates environment variables, command-line arguments, and external data sources to supersede file-based settings. It supports multi-format parsing for JSON, YAML, JavaScript, and TypeScript files, and allows for cust
Computerraria is a digital logic circuit simulator and computer architecture educational tool. It provides a sandbox environment for building and testing functional computer systems by connecting modular logic gates and electronic wires. The project serves as a RISC-V architecture simulator that executes RV32I machine code using virtualized hardware components. It includes a virtualized CPU toolchain that uses containerized systems to compile source code into binary formats compatible with these custom processor architectures. The system covers digital logic circuit design and RISC-V ISA sim
Webpacker is a frontend build tooling system and JavaScript module manager that integrates Webpack into Ruby on Rails applications. It serves as a bridge between the backend web framework and the frontend build process to compile JavaScript and CSS into browser-ready bundles. The system provides a dedicated development asset server for real-time code reloading and automatic browser refreshing. For production, it includes a precompilation pipeline that minifies scripts and stylesheets and applies network asset compression to optimize delivery. The project covers comprehensive asset management
react-native-config is a cross-platform mobile environment manager and native build configuration tool. It implements twelve-factor app configuration principles by separating environment-specific settings from application code. The project provides a mechanism to inject environment variables directly into native project files and build settings during the compilation process. It further functions as a type-safe configuration loader that generates TypeScript definitions for environment variables to ensure autocompletion and safety. The tool manages multi-environment configurations by loading
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
Commitizen is a command-line tool and software release utility that automates version calculation, conventional commit enforcement, and changelog generation from git history. The system parses commit messages against conventional specification rules, calculates version increments based on recent commits, and synchronizes version numbers across package manifest files and project metadata without storing state. The application provides interactive prompts to build structured commit messages and includes git hook integration to validate local commit operations before completion. It compiles comm
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
HestiaCP is a Linux web hosting control panel designed for the centralized administration of web servers, databases, and DNS records. It serves as a management suite for hosting email services and managing multiple PHP language runtimes for various web applications and user accounts. The project distinguishes itself through integrated security orchestration, providing a Linux firewall orchestrator with automated brute-force detection and an SSL certificate automator for the issuance and renewal of security certificates. It includes a DNS zone manager with clustering support, as well as a mail
WorkerVless2sub is a serverless proxy subscription manager that runs on Cloudflare's edge network, generating optimized VMess, VLESS, and Trojan proxy links. It operates as a subscription generator that combines a default node pool with IP-replacement optimization to produce high-performance proxy configurations. The project distinguishes itself through its environment-variable-driven configuration system, allowing node parameters like host, UUID, and password to be set without code changes. It provides multiple subscription delivery methods, including a token-based quick endpoint for pre-con