Improvements in hdoc 1.1.0

23 June 2021

Today we released hdoc 1.1.0, bringing some long-awaited features and improvements to hdoc. This post will go over the key new features and show them off with some short clips of each one.

Go to source

Browsing HTML documentation is nice, but sometimes you want to be able to go look at the C++ source. Previous versions of hdoc only showed you the file and line where a symbol was declared, and it was up to you to open that file up in your text editor or find it in your source code repository. Now when you supply hdoc with the URL of your GitHub or GitLab repo it'll automatically insert links to the exact file and line for every symbol in your codebase. Here it is in action:

This new feature integrates with the source code repository you already use and lets you make changes to the documentation immediately after seeing it in hdoc. Integrating with GitHub and GitLab also allows us to provide this feature without having your code ever touch our servers.

Your codebase is a graph of classes, functions, enums, methods, etc. Up until now, hdoc hasn't made it easy to traverse this graph. With the addition of internal links in hdoc 1.1.0, symbols in your codebase appear as links and you can explore your codebase with ease.

Internal links are cool, but C++ code often contains STL and standard library types such as std::vector and std::string. In hdoc 1.1.0, these std types also appear as links to the corresponding cppreference page, where you'll find top notch documentation for each type. Here's an example of it:

Instant search has been in hdoc since the beta, but it's a feature we want to highlight with our newest release. Our goal with instant search was to make searching your codebase a seamless and low-latency experience. Each keystroke updates the search results and lets your precisely narrow down the field to the exact things you're looking for. All processing happens locally on your machine, allowing for a fast and efficient experience. Check out the video below:

Other improvements

The new release also had a myriad of improvements to the documentation output, such as removing empty sections, improving the search UX, and using the latest versions of LLVM/Clang and other dependencies. See the release notes for the full list of changes in hdoc 1.1.0.

Try it out!

We'd love for you to try hdoc out and see what it can do for your codebase. You can get pre-compiled static binaries and free hosting on docs.hdoc.io by making an account. Alternatively, you can check out hdoc's source code and compile it yourself. Commercial customers also have enterprise plans available to meet their needs.

Still not sure? Check out what hdoc's output looks like on the LLVM/Clang project, one of the largest and most important C++ projects in existence.