- π¬ C++23 Ready Presets: Leverage cutting-edge C++ features
- π‘οΈ Code Quality Tools: Integrated targets for maintaining high standards
- π¦ CPM Package Management: Simplified dependency handling
- π Doxygen Configuration: Seamless documentation generation
- π§ͺ CTest Integration: Straightforward testing setup
- π³ Docker Support: Pre-configured containerization
- π» IDE Compatibility: Works with QtCreator, CLion, Visual Studio, KDevelop
- π Cross-Platform: Linux, Windows, macOS support
- ποΈ CMake-Driven: Streamlined CI/CD configuration
Contemporary C++ development requires sophisticated tooling integration that addresses performance, maintainability, and developer experience concerns. This template provides a comprehensive foundation for high-performance applications with enterprise-grade quality assurance mechanisms.
Component | Technology | Configuration | Performance Impact |
---|---|---|---|
Build System | CMake 3.28+ | Multi-preset configuration | Zero runtime overhead |
Compiler Support | GCC 13+, Clang 16+, MSVC 19.35+ | Standards-compliant C++23/26 | Optimal code generation |
Memory Management | Custom allocators, RAII patterns | Stack-preferring design | Sub-microsecond allocation |
Concurrency | std::execution, coroutines | Lock-free data structures | Minimal contention |
Error Handling | std::expected, error codes | Zero-cost exception safety | Predictable performance |
Tool Category | Implementation | Integration | Quality Metrics |
---|---|---|---|
Static Analysis | Clang-Static-Analyzer, PVS-Studio | Pre-commit hooks | Zero false positives |
Dynamic Analysis | AddressSanitizer, MemorySanitizer | CI/CD integration | 100% memory safety |
Performance Profiling | Perf, Intel VTune, Tracy | Continuous benchmarking | Performance regression detection |
Documentation | Doxygen, Sphinx | Automated generation | API coverage tracking |
cmake 3.25.0+
C++ compiler with C++23 support
ninja
(optional) cmake/cfg/*.cmake tools
# Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Dependencies
brew install cmake llvm doxygen
# Chocolatey
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
# Dependencies
choco install cmake llvm visualstudio2019buildtools doxygen
sudo apt update
sudo apt install cmake g++ doxygen
sudo dnf check-update
sudo dnf install cmake gcc-c++ doxygen
cmake --preset=gcc .
cd build/release
cmake --build . --config gcc
cd build/gcc
ctest --output-on-failure
docker build -t my-image -f docker/<desired_os>.Dockerfile .
cd build/gcc
cmake --build . --target doxygen
# Browse documentation
cd build/gcc/docs/doxygen/html
python -m http.server 8080
- Add Android build support
Contributions are welcome! Fork the repository and submit a pull request.
Thanks to CMake, CTest, and the open-source community.