Doxide is a documentation generator for modern C++. It consumes C++ sources annotated with
/** documentation comments */ containing
@special_commands, generates Markdown, and publishes for the web. Doxide is an alternative to Doxygen, but aims at a more modern look and feel, with responsive design for desktop and mobile devices—just like this website.
- Doxide is configured with YAML, generates Markdown, and publishes HTML for the web.
- Doxide is written in C++ so that its primary users, C++ developers, can readily contribute. It uses Tree-sitter to parse C++.
- Doxide is open source under an Apache 2.0 license, and runs on Linux, Mac, and Windows.
- To ease migration from other documentation tools, many standard Doxygen commands are supported.
/** * An example. * * @tparam T Template parameter. * * @param x Input parameter. * @param[out] y Output parameter. * * @return Return value. * * @tip There are plenty more demos [here](/demo). */ template<class T> int f(int x, int& y);
template<class T> int f(int x, int& y)
- Template parameter
- Template parameter.
- Input parameter.
- Output parameter.
- Return value.
There are plenty more demos here.
By generating Markdown, Doxide opens C++ documentation to the whole wide world of static site generation tools and themes. There is particular support for MkDocs and the Material for MkDocs theme, as on this website. A little extra effort enables alternative static site generation tools such as Jekyll and Hugo. Other formats such as PDF are possible too, via Pandoc.
This is all very new, a humble attempt to modernize documentation for the C++ community. Development is active, feedback is sought, and contributions very welcome. See the GitHub repository to report an issue or contribute a bug fix or feature, or contact Lawrence Murray ( ).