30 open-source projects similar to ruby/rubygems, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Rubygems alternative.
Bundler is a Ruby dependency manager that resolves gem versions and locks them in a lockfile so every machine installs the same set of dependencies. It manages package sources, provides environment diagnostics, and wraps commands and consoles to run inside a consistent gem context, preventing version mismatches across development, testing, and production. Unlike a simple package installer, Bundler uses a SAT solver to find a consistent set of gem versions satisfying all constraints, segregates authentication secrets from source URLs, and enforces platform-specific dependency filtering. Its lo
clib is a C language package manager and dependency manager used to install, update, and manage external C libraries and executable dependencies from remote repositories. It functions as a distribution tool for structuring source code and metadata to publish C libraries and a development toolkit for maintaining consistent build environments. The project provides a framework for C library distribution and dependency resolution, utilizing manifest files to track required library versions and ensure reproducible builds across different systems. It streamlines the C development workflow by managi
This project is a reference implementation and tutorial designed to demonstrate the end-to-end workflow of building, versioning, and uploading Python distributions. It serves as a concrete project template and example for configuring metadata and build artifacts for package indices. The repository illustrates how to package software by defining project metadata and dependencies in static configuration files. It covers the process of transforming source trees into versioned archives and platform-specific binary distributions, specifically showing how to build binary wheels and source distribut
Specs is a centralized package metadata repository and distribution service for the Apple platform. It serves as a public index of library specifications, enabling the discovery, resolution, and installation of third-party frameworks for iOS and macOS projects. The project provides a podspec distribution service that hosts and validates library specifications to ensure reproducible dependency resolution. It utilizes a Git-based collection of structured specifications and a REST API to manage library publishing, ownership, and versioning. The system encompasses comprehensive capabilities for
This project is a command line package manager and dependency management engine used for installing, updating, and removing software packages across different operating systems. It functions as a package recipe system and software repository administrator, utilizing declarative scripts to define software sources, build arguments, and installation steps. The system operates as a binary distribution platform that compiles source code into pre-compiled binaries and distributes them through remote repositories. It includes an automated version tracker that monitors upstream software releases and
This project is a Ruby-based package definition repository that functions as a cross-platform package manager and software dependency resolver for macOS and Linux. It provides a centralized system for installing, updating, and managing software through a Git-based distribution model. The system distinguishes itself through a binary package distribution network that produces pre-compiled bottles to avoid local compilation from source. It utilizes a Ruby-based domain specific language to define installation recipes and employs a distributed version control architecture to synchronize these defi
NuGetForUnity is a package manager and dependency management system that integrates NuGet packages into Unity projects. It functions as a NuGet client for game development, allowing for the installation, restoration, and updating of external .NET libraries and their transitive dependencies without manual DLL imports. The tool includes a library publishing utility for creating package specification files and uploading custom libraries to remote NuGet servers. It supports the use of both official and custom package feeds, enabling the distribution of proprietary libraries through private regist
This project is a command line interface for managing, installing, and publishing JavaScript packages to a remote registry. It serves as a dependency resolution tool, a software registry publishing client, and a security auditor for Node.js development workflows. The tool distinguishes itself by providing integrated monorepo workspace management and a comprehensive registry authentication client that supports multi-factor authentication. It enables detailed control over the software supply chain through provenance attestations, package signature verification, and the generation of a Software
jspm-cli is a Deno-based command-line tool and import map package manager that resolves JavaScript dependencies to URLs for native ES module loading in the browser. It functions as an ESM dependency resolver and frontend build pipeline, mapping bare module specifiers to remote CDN URLs or local paths. The tool acts as an environment-aware module manager, allowing developers to define conditional resolution rules to switch module implementations between development and production contexts. It manages the generation of browser-native import maps, which include cryptographic subresource integrit
Kimai is an open-source time tracking system that records employee working hours, manages absences, and generates professional invoices from recorded timesheets and expenses. It organizes all time records through a mandatory three-level hierarchy of customer, project, and activity, and supports project budget monitoring with configurable time and money limits. The application is extensible through a plugin system that allows adding custom features, invoice templates, reporting views, and dashboard widgets without modifying core files. It provides a RESTful JSON API for programmatic read and w
Snyk is an application security testing platform designed to identify and remediate vulnerabilities across source code, open-source dependencies, container images, and infrastructure-as-code configurations. It functions as a comprehensive security workflow automation tool, utilizing a static analysis engine and dependency graph mapping to detect security flaws and license compliance issues throughout the software development lifecycle. The platform distinguishes itself through agentic workflow orchestration and an automated remediation pipeline that generates and submits pull requests to patc
npm is a JavaScript package manager and dependency management tool. It serves as a command line interface for interacting with a central registry of shareable JavaScript code modules, allowing for the installation and management of third-party libraries. The project handles Node.js package distribution by publishing code to a registry and managing project environment versioning to prevent breaking changes. It provides the necessary infrastructure for JavaScript dependency management and frontend build automation. Core capabilities include the ability to install project dependencies, resolve
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.
This project is a declarative framework and domain-specific language for managing Emacs Lisp packages. It functions as a startup performance optimizer by grouping package installation, variable settings, and keybindings into single blocks to reduce initial boot time. The system distinguishes itself through a deferred loading framework that delays package execution until specific keys, hooks, or modes are triggered. It uses a macro-based declaration syntax to organize configuration and automate the generation of autoloads, ensuring packages are only loaded when they are actually required. The
Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible builds across environments. It stores project-specific copies of Go packages in a vendor directory, isolating dependencies per project to avoid version conflicts, and supports fetching packages from Git, Mercurial, Bazaar, and Subversion repositories. The tool resolves dependency versions using semantic versioning ranges and operators, and generates a lock file that records exact commit IDs for all transitive dependencies. Glide distinguishes itself with an interactive version wiz
Chocolatey is a Windows package manager and command-line software automator. It serves as a system configuration tool designed to automate the installation, upgrading, and removal of software packages on Windows operating systems through a terminal interface. The project utilizes a NuGet-based software distribution model to manage and version applications. This approach replaces manual downloads and interactive installer wizards with scripted, repeatable deployments. The tool covers broad capability areas including automated system provisioning, Windows package deployment, and software manag
Bun is a high-performance runtime environment designed to execute JavaScript and TypeScript applications with minimal latency and high throughput. Built on a native core implemented in Zig, it provides a unified execution engine that leverages JavaScriptCore for efficient memory management and low-latency startup. The project functions as an all-in-one toolchain, integrating a native bundler, transpiler, package manager, and test runner into a single command-line interface. What distinguishes Bun is its focus on native system integration and developer productivity. It features a high-performa
Devpush is a self-hosted Git-based PaaS that automates the deployment of containerized applications. It maps each Git branch to an isolated Docker environment, creating a multi-environment runtime where staging, production, and other workflows run in parallel with scoped configuration and encrypted variables. Deployments are triggered automatically by Git push events via a configured GitHub App, managing the full lifecycle from build to release with zero-downtime rollouts and instant rollback. The platform includes a built-in Let's Encrypt SSL manager that automatically provisions and renews
This project provides a functional package manager and a reproducible build system designed to ensure identical build inputs always produce the same outputs. It serves as the foundation for a declarative Linux distribution where the entire system state is defined in a configuration file, enabling predictable deployments and full-system rollbacks. The system uses a deterministic functional language and a lazy-evaluation expression engine to manage software dependencies and isolate build environments. It distinguishes itself through a content-addressable store that allows multiple versions of s
Stack Auth is an open-source authentication and authorization platform that provides pre-built UI components, OAuth integration, team management, and session handling for web applications. It offers a complete authentication lifecycle covering sign-in, sign-up, session management, password recovery, and multi-factor security, with support for passkey authentication and OAuth providers including Google, GitHub, and Apple. The platform includes a team-based permission system with role-based access control, allowing users to be organized into teams with granular permissions for membership manage
Warehouse is a Python Package Index implementation and distributed package registry. It serves as a central repository and web application for hosting, discovering, and distributing versioned Python software packages via a standardized API. The system functions as a multi-tenant package manager with a server implementation compatible with Python Package Index standards. It provides specialized infrastructure for software package hosting and an index for clients to discover and download specific library versions. The project incorporates comprehensive security and access control, including mu
OpenRewrite is an automated refactoring engine and source-to-source migration framework. It uses a lossless semantic tree parser to represent source code as type-aware trees that preserve original whitespace and formatting, enabling precise and deterministic modifications. The project utilizes a declarative refactoring pipeline where sequences of transformations are defined in YAML to resolve breaking changes and technical debt. It features type-aware pattern matching and cross-language model mapping to apply similar refactoring patterns across different programming languages. The framework
This project is a shell-based provisioning script and build optimizer designed to automate the installation and configuration of PHP extensions and the Composer dependency manager within Docker containers. It serves as a runtime environment builder that simplifies the process of adding PHP modules to container images. The tool distinguishes itself by automating the resolution of system-level dependencies required for PHP extension compilation, reducing the manual effort typically needed in a Dockerfile. It supports a variety of installation methods, including PECL package retrieval, direct so
Miniforge is a minimal installer for the Conda package management system that provides access to community-maintained software channels. It serves as a lightweight tool for setting up isolated software environments and distributing pre-compiled binary packages to ensure cross-platform compatibility. The project enables the installation of a minimal environment and facilitates the migration of package channels from vendor repositories to community-driven distributions. It allows users to retrieve and manage software packages built by a community to extend the available tools in a local environ
Lerna is a monorepo management tool, build orchestrator, and package publisher for JavaScript and TypeScript projects. It enables the management of multiple packages within a single shared repository, providing utilities for workspace organization and the coordinated publishing of packages to a registry. The tool distinguishes itself through dependency-aware task orchestration and automated version management. It uses topological sorting to sequence tasks and utilizes content-hash caching to skip redundant executions when input files remain unchanged. Versioning is automated by parsing standa
This is a role-based access control system for Laravel applications that manages user permissions and roles within a database. It provides a database permissions manager to assign specific abilities to users and roles, utilizing authorization gates to restrict access to routes and interface elements. The project features a wildcard permission system that uses pattern matching to grant broad access across multiple related permissions. It also supports team-scoped access control, allowing users to maintain different roles and permission levels across separate organizational contexts or teams.
godep is a dependency manager for Go that records, restores, and updates package versions to ensure reproducible builds across different environments. It functions as a version lock tool, tracking specific package revisions in a manifest file to synchronize development workspaces and build states. The tool includes vendoring capabilities that copy external Go source code into a local directory, enabling projects to be built without active network access. The system manages the full dependency lifecycle, covering version locking, workspace synchronization, and the updating of tracked packages
KurrentDB is an event-native database designed for event sourcing and event-driven architectures. It stores events as immutable, ordered records in streams, preserving a complete audit trail and enabling temporal queries. The database uses gRPC for all client-server and inter-node communication, providing efficient binary serialization and bidirectional streaming, and supports atomic multi-stream writes that ensure consistency across multiple streams in a single transaction. The database distinguishes itself with a built-in JavaScript projection engine that transforms, filters, and aggregates
Gauzy is an open business management platform and multi-tenant enterprise resource planning system. It provides a modular business framework designed to manage core organizational operations through a unified web interface or as a headless business API. The platform is distinguished by its integration with the Model Context Protocol, allowing it to act as a server that exposes business data and system functions as tools for AI assistants. It utilizes a dynamic plugin architecture and a dedicated marketplace to extend core business entities and services. The system covers a broad range of ope
Cerbos is an open-source authorization service that provides a centralized, language-agnostic engine for managing access control. It functions as a policy-as-code platform, allowing teams to define, test, and distribute authorization rules using declarative YAML or JSON configurations. By decoupling access logic from application code, it enables consistent permission enforcement across diverse service stacks. The project distinguishes itself through its ability to translate high-level authorization policies into native database query filters. This capability allows applications to enforce sec