When you want full control over your C++ project without fighting with CMake boilerplate or inconsistent dependency setups, meet Zyn — a powerful tool designed for modern C++ workflows with Git-level dependency tracking, semantic versioning, and a clean project structure.
Quick Start
Create your project in seconds:
zyn new my_project
cd my_project
Why Zyn?
Unlike legacy build systems, Zyn keeps things predictable, clean, and modular:
Git-based dependencies with version locking
Semantic versioning support
Clean project layout with predictable src/, include/, and .zyn/ folders
C++ standards support out of the box
Automatic compiler flag generation
Commands
Command What it does
zyn new <name> Create a new project
zyn install <url> Install dependency from Git
zyn add <path> Add a local dependency
zyn run [--debug/--release] Run app
zyn update Update all dependencies
zyn clean Wipe build artifacts
Project Structure
Zyn generates a structure that makes sense:
project/
├── .zyn/
│ ├── deps/ # Git dependencies
│ ├── build/ # Compiled outputs
│ └── lock/ # Version locks
├── src/ # C++ source files
├── include/ # C++ headers
└── zyn.toml # Central project config
Configuration Example
` [project]
name = "my_app"
version = "1.0.0"
language = "cpp"
standard = "c++20"
compiler = "clang++"
[directories]
sources = "src"
include = "include"
build = ".zyn/build"
Or use a local path:
[dependencies]
mylib = { path = "../mylib" }
Zyn will lock versions, build automatically, and ensure reproducibility.
Best Practices
Always commit zyn.toml and .zyn/lock/
Use tagged releases instead of branches
Run zyn update regularly to keep deps fresh
Prefer minimal, focused dependencies — Zyn makes it easy
Conclusion
Zyn is what happens when you combine modern package management with low-level power. If you're serious about C++, and want a real workflow, try Zyn.
1 comment
[ 2.9 ms ] story [ 9.3 ms ] threadQuick Start Create your project in seconds: zyn new my_project cd my_project
Add dependencies directly from Git: zyn install https://github.com/fmtlib/fmt.git@9.1.0
Run it fast, run it clean: zyn run --release
Why Zyn? Unlike legacy build systems, Zyn keeps things predictable, clean, and modular:
Git-based dependencies with version locking
Semantic versioning support
Clean project layout with predictable src/, include/, and .zyn/ folders
C++ standards support out of the box
Automatic compiler flag generation
Commands
Command What it does zyn new <name> Create a new project zyn install <url> Install dependency from Git zyn add <path> Add a local dependency zyn run [--debug/--release] Run app zyn update Update all dependencies zyn clean Wipe build artifacts
Project Structure Zyn generates a structure that makes sense:
project/ ├── .zyn/ │ ├── deps/ # Git dependencies │ ├── build/ # Compiled outputs │ └── lock/ # Version locks ├── src/ # C++ source files ├── include/ # C++ headers └── zyn.toml # Central project config
Configuration Example ` [project] name = "my_app" version = "1.0.0" language = "cpp" standard = "c++20" compiler = "clang++"
[directories] sources = "src" include = "include" build = ".zyn/build"
[dependencies] fmt = { git = "https://github.com/fmtlib/fmt.git", tag = "9.1.0" } boost = { path = "/opt/boost" }
[libraries] lib_dirs = ["/usr/local/lib"] libraries = ["pthread", "dl"] `
Dependency Management Add a Git repo directly:
[dependencies] json = { git = "https://github.com/nlohmann/json.git", tag = "v3.11.2" }
Or use a local path: [dependencies] mylib = { path = "../mylib" }
Zyn will lock versions, build automatically, and ensure reproducibility.
Best Practices
Always commit zyn.toml and .zyn/lock/ Use tagged releases instead of branches Run zyn update regularly to keep deps fresh Prefer minimal, focused dependencies — Zyn makes it easy Conclusion Zyn is what happens when you combine modern package management with low-level power. If you're serious about C++, and want a real workflow, try Zyn.
Forget clutter. Forget hacks. Just build.
Zyn — When Control Begins.