2024-05-05 23:31:42 +02:00
# docpp
2024-05-06 00:31:29 +02:00
![action ](https://github.com/speediegq/docpp/actions/workflows/cmake-multi-platform.yml/badge.svg )
2024-05-17 14:47:09 +02:00
C++11 library for generating HTML, CSS and SGML-like documents.
2024-05-05 23:31:42 +02:00
2024-05-07 17:26:11 +02:00
## Features
2024-05-17 14:47:09 +02:00
- HTML and CSS document generation and deserialization
2024-05-07 17:26:11 +02:00
- Sensible indentation for pretty-formatting.
- Modern C++ API
- No dependencies, other than the standard library
- Windows, macOS, Linux and *BSD support
- LGPL license
## Not yet implemented
2024-05-17 14:47:09 +02:00
- HTML/CSS serialization (parsing from e.g. file)
2024-05-07 17:26:11 +02:00
2024-05-05 23:31:42 +02:00
## Installation
To install the library, you can utilize the provided CMakeLists.txt file:
```sh
mkdir build
cd build
2024-05-13 02:00:40 +02:00
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
2024-05-05 23:31:42 +02:00
cmake --build .
cmake --install . --prefix /usr
```
2024-05-13 15:09:20 +02:00
This will install the library to /usr/lib and the headers to /usr/include/docpp.
2024-05-14 15:39:50 +02:00
If you use Arch Linux, you can specify -DGENERATE_PKGBUILD=ON to generate a PKGBUILD file in the build directory. You can then use makepkg to build a package.
```sh
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DGENERATE_PKGBUILD=ON
cmake --build .
makepkg -si
```
If you use Gentoo Linux, you can specify -DGENERATE_EBUILD=ON to generate an ebuild file in the build directory, along with the manifest.
2024-05-13 15:09:20 +02:00
2024-05-05 23:31:42 +02:00
## Usage
Just include docpp.hpp in your project and link against the library. Examples can be found in the examples directory.
2024-05-20 01:52:01 +02:00
## Contributing
See [CONTRIBUTING.md ](CONTRIBUTING.md ) for details on how to contribute to this project.
2024-05-05 23:31:42 +02:00
## License
2024-05-05 23:45:28 +02:00
This project is licensed under the GNU Lesser General Public License v3.0 - see the [LICENSE ](LICENSE ) file for details.
2024-05-05 23:31:42 +02:00
## Code of Conduct
2024-05-06 01:23:23 +02:00
None. Just don't blow up my house. And, don't ask me to rewrite it in Rust.