UDE: From Source Code to Quality Documentation

1. The Starting Point: Source Code and Comments

The foundation of any quality API documentation is the comments in the source code. In large projects (C++, for example), they are the single source of truth. Without them, automatic documentation generation simply isn’t possible.

The only question is how to turn those comments into a modern, convenient, fast site for developers.

2. How This Is Solved Today — and Where the System Breaks

The most popular tool for C++ is Doxygen. However, its native output format (HTML or XML) doesn’t fit modern static site generators (SSGs) like Hugo, Docusaurus, or VitePress, which expect Markdown as input.

The Doxygen + DoxyBook2 + Hugo Stack

To work around this limitation, intermediate converters are often used: Doxygen generates XML → DoxyBook2 converts the XML to Markdown → Hugo builds the site.

This works, but it has serious limitations:

3. UDE’s Solution: A Unified Pipeline

UDE fully rebuilds the process, removing unnecessary conversion stages and optimizing how data is handled.

UDE Pipeline

UDE’s architecture is built on a clear separation of stages:

  1. Collector extracts data directly from the source code.
  2. Parser translates it into a normalized, language-neutral model — an IR (Intermediate Representation).
  3. Renderer instantly assembles Markdown/HTML in whatever format the target SSG understands, with no intermediate XML crutches.

The advantages of this approach are clear: there’s no extra conversion step, and from a single source (the IR) you can render documentation in any format or style you need.

4. Speed and Predictability

For large projects, build time is critical. UDE solves this with incremental caching.

Incremental Cache

Instead of loading the entire entity graph every time, UDE recomputes only what has actually changed.

5. UDE and Hand-Written Guides (DevGuide)

API reference generated from code answers the question “how are the functions and classes structured.” But it can’t tell you “in what order to call them to solve a specific business problem.” That’s what DevGuides are for — manually written articles and tutorials.

UDE doesn’t try to replace that manual work. Instead, it provides seamless integration: the generated API reference stays complete and always up to date, living naturally alongside hand-written guides on the pages of modern SSGs.