C++17 library for generating HTML, CSS and SGML-like documents. https://speedie.site/docpp
Go to file
2024-08-23 17:26:23 +02:00
.github/workflows Changed my mind, disable Debug testing. 2024-05-17 23:07:47 +02:00
cmake Add Gentoo ebuild, along with code necessary to generate one. Also, 2024-05-14 15:39:50 +02:00
docs Version bump: 0.1.0 2024-06-08 01:15:03 +02:00
examples Simplify HTML::Properties class 2024-06-17 21:08:50 +02:00
include Define aliases for certain types globally instead of in classes, and expand it to other ones, such as std::string. Primarily useful for testing. 2024-08-23 17:26:23 +02:00
scripts Fix dist_release function call in Make script. 2024-05-17 23:54:24 +02:00
src Define aliases for certain types globally instead of in classes, and expand it to other ones, such as std::string. Primarily useful for testing. 2024-08-23 17:26:23 +02:00
tests This commit makes many breaking changes to the library. They're far too many to list, but all of them are syntactical - no major behavior will be altered with this commit. However, C++17 is now required in order to make use of docpp. It will **no longer build** with a C++11 or C++14 compiler. Thus, please update your projects to make use of C++17, or stick with the last commit. 2024-08-23 14:11:46 +02:00
.gitignore Add Doxygen file, remove old aliases. 2024-05-12 21:56:03 +02:00
CMakeLists.txt This commit makes many breaking changes to the library. They're far too many to list, but all of them are syntactical - no major behavior will be altered with this commit. However, C++17 is now required in order to make use of docpp. It will **no longer build** with a C++11 or C++14 compiler. Thus, please update your projects to make use of C++17, or stick with the last commit. 2024-08-23 14:11:46 +02:00
CONTRIBUTING.md Oops, wrong file name. 2024-05-20 01:53:34 +02:00
LICENSE Initial commit 2024-05-05 23:31:42 +02:00
README.md This commit makes many breaking changes to the library. They're far too many to list, but all of them are syntactical - no major behavior will be altered with this commit. However, C++17 is now required in order to make use of docpp. It will **no longer build** with a C++11 or C++14 compiler. Thus, please update your projects to make use of C++17, or stick with the last commit. 2024-08-23 14:11:46 +02:00

docpp

action

C++17 library for generating HTML, CSS and SGML-like documents.

Features

  • HTML and CSS 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/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.

Contributing

See CONTRIBUTING.md for details on how to contribute to this project.

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.