Setting up a new C++ project usually requires a significant amount of preparation and boilerplate code, even more so for modern C++ projects with tests, executables and continuous integration. This template is the result of learnings from many previous projects and should help reduce the work required to setup up a modern C++ project. Installable target with automatic versioning information and header generation via PackageProject.cmake. Automatic documentation and deployment with Doxygen and GitHub Pages. Eventually, you can remove any unused files, such as the standalone directory or irrelevant github workflows for your project. Feel free to replace the License with one suited for your project. To keep the template modular, all subprojects derived from the library have been separated into their own CMake modules. This approach makes it trivial for third-party projects to re-use the projects library code.

Features

  • Modern CMake practices
  • Suited for single header libraries and projects of any scale
  • Clean separation of library and executable code
  • Integrated test suite
  • Continuous integration via GitHub Actions
  • Code coverage via codecov

Project Samples

Project Activity

See All Activity >

Follow ModernCppStarter

ModernCppStarter Web Site

You Might Also Like
Red Hat Ansible Automation Platform on Microsoft Azure Icon
Red Hat Ansible Automation Platform on Microsoft Azure

Red Hat Ansible Automation Platform on Azure allows you to quickly deploy, automate, and manage resources securely and at scale.

Deploy Red Hat Ansible Automation Platform on Microsoft Azure for a strategic automation solution that allows you to orchestrate, govern and operationalize your Azure environment.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of ModernCppStarter!

Additional Project Details

Programming Language

C++

Related Categories

C++ Software Development Software, C++ Admin Templates, C++ Code Coverage Tool

Registered

2022-04-20