Skip to content

Awesome Doxygen Style

Doxygen is the de-facto standard tool for C++ API documentation. It comes with a whole bunch of useful features such as auto-generated API documentation from annotated sources or automatic cross-references.

Unfortunately, the default Doxygen HTML output is quite dated, both in terms of visual style as well as navigation. Here’s an example:

Default Doxygen HTML output

Especially on mobile devices the resulting pages are notoriously difficult to navigate1.

Customized HTML

Since I was not really satisfied with the above, I did some work to customize the output for our mesh processing library to have a slightly more modern look and feel. The results looked like this:

Customized Doxygen HTML output

While this is arguably better than the default, it is far away from perfect.

doxygen-awesome-css

I recently came across a project that takes Doxygen customization even further: the doxygen-awesome-css project developed by @jothepro.

Some of the advantages are

I immediately adopted it for PMP. Here’s a snapshot:

Customized Doxygen HTML output

Personally, I think this is indeed an awesome improvement.

Summary

If you are looking for a more modern style for your Doxygen docs, just give doxygen-awesome-css a try. Installation is super easy, you basically only need to include the additional CSS files into your repository and tell Doxygen to use them through the HTML_EXTRA_STYLESHEET option.

Check out the project website for more details. Hope this helps.

  1. One might argue that mobile is not so important for API documentation. Fair enough. However, Doxygen can also used to build complete project websites including landing pages, tutorials, or high-level documentation. Therefore, accessibility on mobile is still an important aspect.