MrDocs

MrDocsBanner

Welcome to MrDocs, the ultimate solution for generating comprehensive reference documentation from your C++ codebase and javadoc comments. MrDocs harnesses the power of Clang/LLVM, offering a seamless and efficient way to document your C++ projects.

With MrDocs, you can effortlessly extract valuable insights and produce detailed documentation for your C++ code. By leveraging the rich semantic knowledge provided by Clang/LLVM, MrDocs accurately captures the nuances of your codebase, including class hierarchies, functions, and their respective parameters and return types. This ensures that your documentation is not only informative but also up-to-date, eliminating the need for manual documentation maintenance.

The integration of javadoc-style comments takes your documentation to the next level. With MrDocs, you can easily embed human-readable explanations, usage examples, and additional contextual information directly within your code. These comments serve as a valuable resource for both developers and consumers of your code, promoting clarity and understanding.

MrDocs seamlessly fits into your development workflow, with the freedom to customize the output format to suit your project requirements. MrDocs offers versatile options for output formats, including XML and Asciidoc. In addition to the provided output formats, MrDocs empowers users to bring their own creativity and customization to the documentation generation process. With support for handlebars templates, you can create and apply your own unique templates to the generated documentation. This allows you to customize the styling, layout, and overall presentation of your documentation, making it truly personalized and aligned with your project’s branding.

MrDocs empowers you to produce high-quality documentation that benefits both developers and users. Explore the power of MrDocs today and experience the ease of building comprehensive reference documentation for your C++ projects. Say goodbye to tedious manual documentation and embrace the efficiency and accuracy of MrDocs.

Comparison

Doxygen:

  • Tries to work for many languages

  • Uses the inferior libclang API

  • Old program with lots of technical debt

  • Not written by me

MrDocs:

  • Narrow and deep focus on C++ only

  • Uses clang’s unstable libtooling API:

    • Understands ALL C++: if clang can compile it, MrDocs knows about it

    • This includes up to C++20 and even experimental features in C++23

  • Brand-new program with no technical debt

  • Written by me