- HTML 95.9%
- JavaScript 3.2%
- CSS 0.9%
| output | New deployment | |
| projects | Bump version | |
| scripts | Update build so that it can deal with gobject and sphinx based docs | |
| themes | Reactivate theme | |
| .gitignore | Basic build skeleton | |
| .gitmodules | Update projects | |
| LICENSE | Initial commit | |
| Makefile | Update build so that it can deal with gobject and sphinx based docs | |
| Pipfile | Update build | |
| Pipfile.lock | Update build | |
| README.md | Update build | |
API documentation website
This repo exists to build the API documentation website.
Building
- Install Doxygen
- Run
pipenv installto install Sphinx and its extensions. - Run
make build
Deploying
Deployment is to the pages branch of this repository, as we're hosting on Codeberg
pages. Run make deploy to get this done.
Details
Each of interpeer's project repos contains its own documentation. As we'd like to provide more than just automatically generated API docs, we're using Sphinx to maintain this. However, that system does not deal well with C/C++ source files.
Breathe is an extension to Sphinx that runs Doxygen to generate XML output, and provides Sphinx directives for adding the Doxygen data to the Sphinx documentation.
In each project, we're looking for a Makefile in docs/api to detect whether
it has Sphinx documentation. If found, the documentation is built, and copied to
a project subdirectory in output.
The contents of the output folder are then pushed to the pages branch for
publication.
As an additional wrinkle, we're using the interpeer theme to generate CSS. This is not necessary for building documentation, but it helps style the documentation website a little more consistently with the main website.