30 open-source projects similar to clibs/clib, 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.
RubyGems is a package manager for the Ruby language, serving as a tool for packaging, distributing, and installing libraries and software extensions. It functions as a dependency resolver and registry client, managing the installation of required libraries and their recursive dependencies to ensure consistent environments across development and production. The system handles the complete package lifecycle, including the building of distributable archives, the compilation of native C extensions for high-performance system integration, and the publishing of stable or prerelease versions to regi
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
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
pip is a Python package manager used to install, update, and remove software libraries from the Python Package Index and other remote repositories. It functions as a dependency resolver that calculates compatible version sets for complex software trees, an environment inspector for analyzing installed distributions, and a wheel builder that compiles source distributions into binary files. The tool supports various installation methods, including fetching packages directly from web URLs and Git commits, as well as installing packages in editable mode for active development. It enables the crea
cmake-init is a project generator and build system boilerplate designed to automate the initialization of C++ projects. It provides a framework for creating standardized project layouts and build configurations through template-based generation and user-defined prompts. The project functions as a development workflow automator, integrating static analysis, code formatting, and documentation generation directly into the build pipeline. It includes a dependency management system for vendoring external libraries and managing transitive dependencies to ensure consistent package discovery for down
Swift Package Manager is a build tool, dependency manager, and registry client for the Swift language. It transforms source files and external dependencies into executable binaries or libraries and manages the resolution, download, and integration of external code libraries. The project provides a client for publishing and versioning signed code packages via a remote registry, ensuring identity verification through digital signing. It also includes a source code formatter to standardize code style and indentation. The system covers a broad range of capabilities including modular code distrib
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
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
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
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
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
Setuptools is a Python package build tool and distribution framework used to bundle code into distributable archives. It functions as a project metadata manager, allowing for the declarative definition of project identity, versioning, and dependencies. The toolkit distinguishes itself by providing an extension compiler for C and C++ source files and a plugin architecture that uses entry points to enable runtime discovery of functionality. It also supports development environment tooling, such as editable installs that link source code directly to the environment to allow immediate changes wit
gperftools is a collection of specialized tools for profiling CPU usage, detecting memory errors, and providing high-performance memory allocation. It provides a memory profiling toolkit for C++ applications, including a sampling CPU profiler and a heap profiler for analyzing consumption patterns. The project includes a high-performance memory allocator designed as a multi-threaded replacement for standard allocation to reduce contention and improve execution speed. It further provides a memory debugger to identify illegal memory access and double frees. The toolkit covers broad diagnostic c
Cargo is the official build system and package manager for the Rust programming language. It provides a unified command-line interface that orchestrates the entire development lifecycle, including compiling source code, managing complex dependency graphs, running tests, and distributing packages through a centralized registry. By utilizing declarative manifest files, it ensures that builds remain reproducible and consistent across different environments. The tool distinguishes itself through its deep integration with the Rust compiler and its sophisticated approach to project management. It f
npm-check-updates is a command line utility and programmatic module used to check for newer versions of npm packages and update project manifest files. It functions as a registry client and semantic version manager that upgrades package constraints to the latest releases. The tool distinguishes itself by including supply chain security features, such as a release cooldown period and package ownership tracking, to prevent the adoption of unstable or malicious new releases. It also provides a programmatic API for integrating dependency checks and upgrades directly into custom scripts. Broad ca
Pixi is a conda environment manager that creates reproducible, lock-file-backed environments with cross-platform support and multi-language dependency resolution. It combines package management from both conda-forge and PyPI simultaneously, coordinating their dependency graphs to prevent conflicts, while pinning every transitive dependency to exact versions in a cross-platform lock file for bit-for-bit identical environments across machines. The project distinguishes itself by also functioning as a cross-platform task runner that executes user-defined commands and multi-step pipelines inside
Package Control is a package manager for the Sublime Text editor designed for discovering, installing, and updating extensions and plugins. It utilizes a JSON-based repository system to track package versions and source URLs, providing a framework for managing the editor's extended functionality. The system integrates with version control systems to allow plugins to be cloned directly, enabling source-level modifications and tracked updates. It further provides a mechanism for cross-platform configuration synchronization to maintain consistent sets of installed packages and settings across di
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
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 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
Nix is a functional package manager, purely functional build system, and declarative configuration system. It serves as a reproducible environment manager designed to eliminate manual installation drift by defining software and operating system states through a configuration language. The project provides a means of managing software dependencies in isolated environments to prevent conflicts between different versions of the same tool. It enables the creation of consistent system configurations and development environments that replicate exactly across multiple machines. Its capabilities cov
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
pip-tools is a set of utilities for Python dependency pinning, lockfile management, and virtual environment synchronization. It functions as a requirement compiler that resolves high-level package declarations into a pinned list of specific versions and content hashes to ensure repeatable builds across different environments. The tool differentiates itself by providing a mechanism to refresh locked dependencies to their latest compatible versions without manual editing. It supports a layered dependency workflow, allowing one requirements file to act as a constraint for another to maintain com
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
zplug is a plugin manager for the Zsh shell designed to install and organize community plugins, themes, and commands from remote repositories and local paths. It focuses on environment reproducibility through versioned configuration, allowing plugins to be pinned to specific git branches, tags, or commit hashes. The project optimizes shell startup speed by using a lazy loading system that defers the execution of plugins until they are explicitly required. To accelerate initial environment setup, it employs a parallel installer that downloads multiple extensions concurrently. The manager supp
This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit
Berry is a Node.js package manager, dependency resolution engine, and monorepo workspace manager. It provides the tools necessary for resolving, downloading, and managing dependencies to ensure consistent environments across different development machines, while also serving as a publishing tool for uploading versioned package tarballs to registries. The project is distinguished by its implementation of Plug'n'Play, which resolves dependencies without creating a physical node_modules directory by mapping dependencies directly to the file system. This enables a zero-install development workflo
Xmake is a cross-platform build utility and package manager designed for C and C++ development. It functions as a unified build automation tool that uses a Lua-based domain-specific language to define project targets, manage dependencies, and orchestrate compilation across multiple operating systems and hardware architectures. The system distinguishes itself through a modular, rule-based approach to task orchestration and toolchain integration. By abstracting native build systems and compilers, it allows developers to maintain consistent project configurations while targeting diverse environm
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
create-react-native-app is a command-line project bootstrapper and template generator for creating the directory structure and configuration files required for React Native applications. It serves as a development scaffold for initializing projects that target iOS, Android, and web environments. The tool automates the generation of a standardized codebase by copying pre-defined source templates and resolving the necessary dependencies to establish a basic development environment. It produces the native metadata files required for platform-specific configuration to ensure the project builds co