Simple light-weight package manager and build system written in C for c/c++ projects
16
stars
46
commits
C
primary language
Sep 7, 2026
updated
Disclaimer: This project is in BETA stage and only available for Linux, use with caution.
Flint is an experimental build system and package manager for C/C++ projects. It aims to simplify the development workflow by managing dependencies directly through Git and automating the compilation process via a single JSON configuration file. Flint is compatible with GCC & Clang compilers.
NOTE:
CLI Docs available here: Flint
Compositions of the Cherts(dependencies) are/will be updated here: Flint Cherts
Prerequisits:
Run the following command in terminal:
curl -fsSL -H "Accept: application/vnd.github.v3.raw" https://api.github.com/repos/mainak55512/flint/contents/build.sh | bash
Flint expects a specific directory layout to function correctly:
Currently, Flint uses a "manifest-first" approach:
deps/ directory.composition.json file. Flint reads this file to understand which directories to include and compile. EDIT: Libraries can be added through chert compositions now (check Flint Cherts).{
"project_name": "example_project",
"project_language": "c",
"version": "0.1.0",
"compiler_path": "/usr/bin/gcc",
"executable": true,
"flags": [],
"lib_links": [],
"include_paths": ["include"],
"src": ["src"],
"dependencies": {
"example_lib": {
"version": "1.0.0",
"remote": "https://github.com/user/example_lib"
}
}
}
As this is an early development prototype, please be aware of the following:
composition.json file can be added as dependencies at this time.flint init
(The remote repository must contain a composition.json file)
flint add <git_remote_url>
or
Add the cherts composition in the dependencies section in composition.json and run
flint sync
N.B. compositions are/will be available in Flint Cherts
flint build
or directly run with
flint run
46 commits
C
96.3%
Shell
3.7%
Simple light-weight package manager and build system written in C for c/c++ projects
16
stars
46
commits
C
primary language
Sep 7, 2026
updated
Disclaimer: This project is in BETA stage and only available for Linux, use with caution.
Flint is an experimental build system and package manager for C/C++ projects. It aims to simplify the development workflow by managing dependencies directly through Git and automating the compilation process via a single JSON configuration file. Flint is compatible with GCC & Clang compilers.
NOTE:
CLI Docs available here: Flint
Compositions of the Cherts(dependencies) are/will be updated here: Flint Cherts
Prerequisits:
Run the following command in terminal:
curl -fsSL -H "Accept: application/vnd.github.v3.raw" https://api.github.com/repos/mainak55512/flint/contents/build.sh | bash
Flint expects a specific directory layout to function correctly:
Currently, Flint uses a "manifest-first" approach:
deps/ directory.composition.json file. Flint reads this file to understand which directories to include and compile. EDIT: Libraries can be added through chert compositions now (check Flint Cherts).{
"project_name": "example_project",
"project_language": "c",
"version": "0.1.0",
"compiler_path": "/usr/bin/gcc",
"executable": true,
"flags": [],
"lib_links": [],
"include_paths": ["include"],
"src": ["src"],
"dependencies": {
"example_lib": {
"version": "1.0.0",
"remote": "https://github.com/user/example_lib"
}
}
}
As this is an early development prototype, please be aware of the following:
composition.json file can be added as dependencies at this time.flint init
(The remote repository must contain a composition.json file)
flint add <git_remote_url>
or
Add the cherts composition in the dependencies section in composition.json and run
flint sync
N.B. compositions are/will be available in Flint Cherts
flint build
or directly run with
flint run
46 commits
C
96.3%
Shell
3.7%