Forge is a command-line tool designed to simplify the creation, building, and management of C++ projects. It provides a streamlined workflow for common development tasks using CMake and Lua.
- Project Scaffolding: Quickly create new executable or library projects.
- Dependency Management: Unified management of Git-based dependencies and Conan packages.
- Lua Configuration: Flexible project configuration using
forge.lua. - Automated Builds: Hands-off CMake generation and compilation.
- Resource Embedding: Easily embed and access binary assets in your C++ code.
- Testing: Integrated Google Test support.
curl -sSL https://raw.githubusercontent.com/0xThurling/forge-cli/refs/heads/main/install.sh | bash- Create:
forge create my_app - Build:
forge build - Run:
forge run
return {
project = {
name = "my_app",
type = "executable",
standard = "20"
},
dependencies = {
direct = {
fmt = { git = "https://github.com/fmtlib/fmt.git", tag = "10.2.1", target = "fmt::fmt" }
}
}
}Comprehensive documentation on commands, architecture, and the Lua engine is available in our Project Wiki.
Forge is a free, open-source tool. If it saves you setup headaches and keeps your C++ workflow clean, consider sponsoring its development.
Contributions are welcome! Please feel free to open issues or submit pull requests on GitHub.
This project is licensed under the MIT License.
.png)