C++17 library for generating HTML, CSS and SGML-like documents. https://speedie.site/docpp
Go to file
2024-05-17 13:30:47 +02:00
.github/workflows Add CI badge. 2024-05-06 00:31:29 +02:00
cmake Add Gentoo ebuild, along with code necessary to generate one. Also, 2024-05-14 15:39:50 +02:00
docs I don't know if it's so small anymore. 2024-05-14 15:46:43 +02:00
examples Add HTML tag enum 2024-05-15 10:22:22 +02:00
include Fix: Some template functions not having a default value. 2024-05-17 13:30:47 +02:00
scripts Change the shell, for better compatibility. 2024-05-14 19:21:13 +02:00
src Move template functions to header. Rather silly mistake. 2024-05-17 13:02:26 +02:00
tests Move template functions to header. Rather silly mistake. 2024-05-17 13:02:26 +02:00
.gitignore Add Doxygen file, remove old aliases. 2024-05-12 21:56:03 +02:00
CMakeLists.txt Simplify testing. No need to use CMake testing module for this. 2024-05-14 20:33:05 +02:00
LICENSE Initial commit 2024-05-05 23:31:42 +02:00
README.md I don't know if it's so small anymore. 2024-05-14 15:46:43 +02:00

docpp

action

C++11 library for generating XML, HTML and CSS.

Features

  • HTML, CSS and XML document generation and deserialization
  • 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

  • HTML/XML/CSS serialization (parsing from e.g. file)

Installation

To install the library, you can utilize the provided CMakeLists.txt file:

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
cmake --build .
cmake --install . --prefix /usr

This will install the library to /usr/lib and the headers to /usr/include/docpp. 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.

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.

Usage

Just include docpp.hpp in your project and link against the library. Examples can be found in the examples directory.

License

This project is licensed under the GNU Lesser General Public License v3.0 - see the LICENSE file for details.

Code of Conduct

None. Just don't blow up my house. And, don't ask me to rewrite it in Rust.