clibs/clib
FreePackage manager for the C programming language.
FreeFree tier
About clibs/clib
clib is a package manager for the C programming language that focuses on small, standalone 'micro' C libraries. It helps developers quickly discover and install lightweight C utilities from GitHub repositories, promoting code reuse without coupling to large frameworks. clib fetches source files into a local directory (e.g., deps or src) and allows end-users and contributors to work without needing clib itself installed. It supports commands for init, install, update, uninstall, upgrade, configure, build, and search, with packages registered via a community wiki.
Key Features
Install C libraries and executables from GitHub repositories using simple commands like `clib install`
Supports a manifest file `clib.json` for specifying package metadata and source files
Lightweight and promotes small, standalone 'micro' C libraries instead of large frameworks
No runtime dependency for end-users—libraries can be committed directly into a repository
Provides commands for init, install, update, uninstall, upgrade, configure, build, and search
Community-driven registry via a wiki that populates search results
Pros & Cons
Pros
- Simple and minimalistic – reduces overhead compared to larger package managers
- Encourages modular, small C libraries and code reuse
- Fits into any existing C workflow without forcing a specific build system
- Open source and free, with no runtime dependency for users of the installed packages
Cons
- Primarily designed for small utilities; may not handle complex dependency resolution or large frameworks
- Relies on community-maintained wiki registry, which may lack comprehensive coverage
- Limited to libraries hosted on GitHub (clibs org or other repos)
Best For
Discovering and installing small, focused C utilities for rapid prototypingManaging dependencies in C projects without coupling to a large frameworkEasily setting up reusable C components across multiple projectsBootstrap a C project structure with `clib init` and add libraries incrementally
FAQ
What is clib?
clib is a package manager for the C programming language, focusing on small, standalone utilities that are easy to install and reuse.
How do I install clib?
clib can be installed via Homebrew (`brew install clib`), MacPorts, git (clone and make install), or package managers on Ubuntu, Fedora, and Nix.
Does the user of my project need clib installed?
No. clib is intended for development only; its output (source files) should be committed to your repository so end-users do not need clib.
What is a clib.json file?
A clib.json is a manifest file that describes a package: its name, version, repository, description, keywords, license, and source files (src array).