- π¬ 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 (doctest + androidTest)
- π³ Docker Support: Pre-configured containerization
- π» IDE Compatibility: Works with QtCreator, CLion, Visual Studio, KDevelop
- π Cross-Platform: Linux, Windows, Android, 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 |
|---|---|---|
| Build System | CMake 3.30+ | Multi-preset configuration |
| Compiler Support | GCC 13+, Clang 16+, MSVC 19.35+ | Standards-compliant C++23/26 |
| Tool Category | Implementation | Integration |
|---|---|---|
| Static Analysis | Clang-Static-Analyzer, PVS-Studio | Pre-commit hooks |
| Dynamic Analysis | AddressSanitizer, MemorySanitizer | CI/CD integration |
| Documentation | Doxygen | Automated generation |
cmake 3.30.0+C++ compiler with C++23 supportninja(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 doxygensudo apt-get update
sudo apt-get install cmake g++ doxygen llvm clang-tools python-develsudo dnf check-update
sudo dnf install cmake gcc-c++ doxygen llvm python-develcmake --preset=gcc .
cd build/release
cmake --build . --config gcccd build/gcc
ctest --output-on-failuredocker 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- develop
- C++ Weekly by Jason Turner β Weekly doses of modern C++
- Performance-Aware Programming by Casey Muratori β Hardware-conscious development
- C++ Core Guidelines by Stroustrup & Sutter β Industry best practices
- Effective Modern C++ by Scott Meyers β Essential patterns
- cppreference.com β Comprehensive language reference
- C++23 Features β Latest standard capabilities
- Compiler Explorer β Live assembly output analysis
- Quick Bench β Online micro-benchmarking
- cpp insights β Online insights on how compiler will understand the code
Contributions are welcome! Fork the repository and submit a pull request.
Thanks to CMake, CTest, and the open-source community.
"C++ is a language for people who want both elegance and efficiency." β Bjarne Stroustrup
Built with π by developers who believe that performance-aware programming is not premature optimization β it's responsible engineering.