This repository is base project template for C++
- Formating
- Linting
- Unit testing
- API document generation
- GitHub action
- Our docker supports development environment out of box.
- zsh with powerlevel10k theme
- tmux
- VIM with YCM support.
git clone https://github.com/j-marple-dev/cplusplus_template.git
cd cplusplus_template
./run_docker.sh build
# You can add build options
# ./run_docker.sh build --no-cache
./run_docker.sh run
# You can add running options
# ./run_docker.sh run -v $DATA_PATH:/home/user/data
# Re-run last docker container
./run_docker.sh exec
- Locate executable main cpp files on
src/*.cpp
. And${PROJECT_NAME}-${FILE_NAME}
binary files will be built. No need to modifyCMakeLists.txt
. - Locate unit test cpp files on
test/test_*.cpp
. Andtest-${PROJECT_NAME}-${FILE_NAME}
binary files will be built. No need to modifyCMakeLists.txt
.
git clone https://github.com/j-marple-dev/cplusplus_template.git
cd cplusplus_template
./run_check.sh build # Equivalent to mkdir -p ./build && cd build && cmake .. && make
./run_check.sh test # Equivalent to mkdir -p ./build && cd build && cmake .. && make && make test
- Please refer to CODE_OF_CONDUCT guide.