Skip to content

Commit 49b6791

Browse files
committed
improve readme
1 parent 29aea61 commit 49b6791

1 file changed

Lines changed: 22 additions & 9 deletions

File tree

README.md

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,20 @@
55

66
A basic **C++ library template** utilizing [CMake](https://cmake.org/) and [Conan](https://conan.io/).
77

8+
## Features
9+
10+
- 🎣 Dependency management with **Conan**
11+
- 🍭 Build configuration with **CMake**
12+
- 🧩 Automatic publishing of artifacts to **Artifactory** with Github Actions
13+
- 📑 Automatic publishing of **Doxygen** documentation with Github Actions
14+
- 🚀 Preconfigured for Unit-Testing with **Catch2**
15+
816
## Installation
917

1018
To use this library in you project, you can install it in the following ways:
1119

1220
### Conan
13-
```bash
21+
```sh
1422
# Add artifactory repository as remote:
1523
conan remote add jothepro-conan-public https://jothepro.jfrog.io/artifactory/api/conan/conan-public
1624
# Install a release of `mylibrary`
@@ -31,9 +39,14 @@ conan install --remote jothepro-conan-public mylibrary/0.1.8@jothepro/beta --upd
3139
### Build
3240

3341
- **Commandline**:
34-
1. **Create build folder** for out-of-source build: `mkdir build && cd build`
35-
2. **Dependencies** are installed with Conan: `conan install ..`
36-
3. **Build** can also be triggered with Conan: `conan build ..`. This will configure, build and test the project.
42+
```sh
43+
# Create build folder for out-of-source build
44+
mkdir build && cd build
45+
# Install Dependencies with Conan
46+
conan install ..
47+
# Configure, Build & Test
48+
conan build ..
49+
```
3750
- **Clion**: Install the [Conan Plugin](https://plugins.jetbrains.com/plugin/11956-conan) before configuring & building the project as usual.
3851

3952
### Test
@@ -57,7 +70,7 @@ This template uses [Github Actions](https://github.com/features/actions) for aut
5770
When a new release is created in Github, the resulting artifact is automatically uploaded to [a public artifactory repository](https://jothepro.jfrog.io/ui/repos/tree/General/conan-public%2F_%2Fmylibrary)
5871
- The workflow `publish-pages.yaml` automatically builds and publishes the documentation to [Github Pages](https://jothepro.github.io/cpp-library-template/) when a new release is created in Github.
5972

60-
## File Structure
73+
## Directory Structure
6174

6275
```
6376
.
@@ -101,10 +114,10 @@ This template uses [Github Actions](https://github.com/features/actions) for aut
101114
10. Images for documentation.
102115
11. Library sources folder.
103116
12. `CMakeLists.txt` for library.
104-
13. private source file.
105-
14. public headers folder.
106-
15. library namespace.
107-
16. public header file.
117+
13. Private source file.
118+
14. Public headers folder.
119+
15. Library namespace.
120+
16. Public header file example.
108121
17. Unit tests folder.
109122
18. `CMakeLists.txt` that defines unit tests.
110123
19. Example unit test file.

0 commit comments

Comments
 (0)