GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - cpp-best-practices/gui_starter_template: A template CMake project to get you started with C++ and tooling

This repository was archived by the owner on Apr 19, 2023. It is now read-only.
BranchesTags
Open more actions menu

Latest commit

 

History

568 Commits
568 Commits

Folders and files

NameName
Last commit message
Last commit date
.devcontainer
.devcontainer
 
 
.github
.github
 
 
configured_files
configured_files
 
 
fuzz_test
fuzz_test
 
 
src
src
 
 
test
test
 
 
.clang-format
.clang-format
 
 
.clang-tidy
.clang-tidy
 
 
.cmake-format.yaml
.cmake-format.yaml
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.gitlab-ci.yml
.gitlab-ci.yml
 
 
.lgtm.yml
.lgtm.yml
 
 
CMakeLists.txt
CMakeLists.txt
 
 
CMakePresets.json
CMakePresets.json
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
README_building.md
README_building.md
 
 
README_dependencies.md
README_dependencies.md
 
 
README_docker.md
README_docker.md
 
 
README_troubleshooting.md
README_troubleshooting.md
 
 
build_examples.sh
build_examples.sh
 
 
conanfile.txt
conanfile.txt
 
 

Repository files navigation

NOTE: This Project Is Archived

All efforts to maintain "Best Practices" CMake templates are being merged into https://github.com/cpp-best-practices/cmake_template

Important the new cmake_template is simplified in many ways to make it more maintainable, and the goal will be to always keep it simple.

gui_starter_template

ci codecov Language grade: C++ CodeQL

About gui_starter_template

This is a C++ Best Practices GitHub template for getting up and running with C++ quickly.

By default (collectively known as ENABLE_DEVELOPER_MODE)

  • Address Sanitizer and Undefined Behavior Sanitizer enabled where possible
  • Warnings as errors
  • clang-tidy and cppcheck static analysis
  • conan for dependencies

It includes

  • a basic SDL example
  • examples for fuzz, unit, and constexpr testing
  • large github action testing matrix

It requires

  • cmake
  • conan
  • a compiler

For a simplified project, check out the cmake_conan_boilerplate_template.

Ths Boilerplate project will merge new features first, then they will be merged (as appropriate) into gui_starter_template.

Getting Started

Use the Github template

First, click the green Use this template button near the top of this page. This will take you to Github's 'Generate Repository' page. Fill in a repository name and short description, and click 'Create repository from template'. This will allow you to create a new repository in your Github account, prepopulated with the contents of this project.

After creating the project please wait until the cleanup workflow has finished setting up your project and commited the changes.

Now you can clone the project locally and get to work!

git clone https://github.com/<user>/<your_new_repo>.git

More Details

  • Dependency Setup
  • Building Details
  • Troubleshooting
  • Docker

Testing

See Catch2 tutorial

Fuzz testing

See libFuzzer Tutorial

About

A template CMake project to get you started with C++ and tooling

Resources

Readme
Unlicense
Activity
Custom properties

Stars

2.6k stars

Watchers

1 watching

Forks

448 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.