Doxygen is a widely used documentation generation system for various programming languages, such as C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, LaTEX and C#.
Doxygen works either with documented files or with undocumented ones. In the first case, you specify the comments in the source code in a specific format that Doxygen can understand, so the program scans the project folder with subfolders or a specific file. In the second case, you can configure Doxygen to "harvest" your source code and generate the documentation.
When Doxygen finishes the process, it can generate the according documentation in a variety of formats such as HTML, RTF, PostScript, PD with hyperlinks, compressed HTML (CHM), and Unix man pages.
Since the documentation is obtained directly from the source code, you are sure to get the updated version of the docs.
Doxygen is very popular in the open source world, so we can see several open source projects that use this tool to generate the docs pages.
- It's great, it's widely used, it's freeware, it's open source.
- It's a little complicated to get it working.