The generated API reference — every type, every member, the class and collaboration diagrams, the include graphs, and the per-function call and caller graphs — lives at /static/api/index.html.
It is produced by Doxygen from the three library modules (src/dso/, src/plugin/, src/sign/) and the dso-keygen / dso-sign / dso-verify sources. DSOLD_WITH_SIGN is predefined for the scan, so the signed DSOLoader::loadSigned / loadVerified overloads appear in the tree.
For a narrative, human-written companion, see the Reference Manual. It covers the public surface — the plugin:: templates, DSOLoader, and fedem::sign — with the why: when a catalog returns nullptr versus throws, what RTLD_GLOBAL buys you, how the manifest hash stays stable across re-signing. Read the reference for orientation, the Doxygen tree for exact signatures and the graphs.
Which one am I looking at?
| Question | Where to look |
|---|---|
"What is the exact signature of PluginCatalog::create?" | Doxygen › PluginCatalog |
"Does create() throw or return null on an unknown key?" | Reference › PluginCatalog::create |
"What flags does DSOLoader pass to dlopen?" | Reference › DSOLoader::load |
"What are the exit codes of dso-verify?" | Tools › dso-verify |
"Should I use loadSigned or loadVerified?" | User Guide › Signing & Trust |
Generating the docs yourself
With the repository checked out and Doxygen installed, the CMake target docs produces the HTML tree under build/docs/html/:
cmake -B build
cmake --build build --target docs
xdg-open build/docs/html/index.html
Graphviz dot is picked up automatically when present and enables the graphs; without it Doxygen falls back to its own simple inheritance diagrams. The same output is uploaded here at each release.

