← Software

Doxygen

An automatic source-code documentation generator.

Doxygen logo

Doxygen extracts API documentation from comments in C, C++, Java, Python, Fortran, and several other languages. Comments written in a particular format (Javadoc-style /** */ blocks, or //! single-line variants) are parsed alongside the source code, and the resulting cross-referenced HTML, LaTeX, RTF, or man-page output combines the prose with auto-generated class hierarchies, call graphs, and inheritance diagrams.

Dimitri van Heesch started Doxygen in 1997 and has continued to maintain it. The tool has the unusual property of being one of those quiet utilities that you don't notice until you join a large C or C++ project, at which point its output is suddenly familiar — the Linux kernel, Boost, FFmpeg, OpenSSL, Qt, and many other large codebases generate browsable API references with Doxygen.

For modern projects in newer languages there are usually more language-native tools (rustdoc, godoc, sphinx for Python), but in C and C++ Doxygen remains the dominant choice. Configuration is through a doxygen.cfg file with hundreds of options, which is either a strength or a weakness depending on your patience.

License: GPL-2.0-only

Category: Documentation

Website: https://www.doxygen.nl/

Install

Debian/Ubuntu: sudo apt install doxygen
Fedora/RHEL:   sudo dnf install doxygen
Arch:          sudo pacman -S doxygen
macOS:         brew install doxygen

Authors

  • Dimitri van Heesch (creator)
PreviousDovecot NextDrone

This site is currently in Beta. Contact: Chris Paton

Textbook of AI · Textbook of Usability · Textbook of Digital Health

Auckland Maths and Science Tutoring