The following tables compare general and technical information for a number of documentation generators. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs. Note that many of the generators listed are no longer maintained.

General information

Basic general information about the generators, including: creator or company, license, and price.

<!-- In each table, link one (often 1st) instance of terms, remove other WP:OVERLINK(s). -->

{| class="wikitable sortable" style="font-size: 85%; border: gray solid 1px; border-collapse: collapse; text-align: center;"

|- style="background: #ececec"

! Name

! Creator

! Input format

! Languages (alphabet order)

! OS support

! First public release date

! Latest stable version

! Software license

|-

! style="text-align:left;" | Ddoc

| Walter Bright

| Text

| D

| Windows, OS X, Linux and BSD

| 2005/09/19

| DMD 2.078.3

|

|-

! style="text-align:left;" | docToolchain

| Ralph D. Müller

| Text

| Java

| Windows, OS X, Linux and BSD

| 2018/08/31

| v3.4.2

|

|-

! style="text-align:left;" | Document! X

| Innovasys

| Text, Binary

| C++/CLI only, C#, IDL, Java, VB, VBScript, PL/SQL

| Windows only

| 1998

| 2014.1

|

|-

! style="text-align:left;" | Doxygen

| Dimitri van Heesch

| Text

| C/C++, C#, D, IDL, Fortran, Java, PHP, Python

| Any

| 1997/10/26

| 1.16.1

|

|-

! style="text-align:left;" | Epydoc

| Edward Loper

| Text

| Python

| Any

| 2002/01/—

| 3.0 (2008)

|

|-

! style="text-align:left;" | fpdoc (Free Pascal Documentation Generator)

| Sebastian Guenther and Free Pascal Core

| Text

| (Object)Pascal/Delphi

| FPC tier 1 targets

| 2005

| 3.2.2

| reusable parts are GPL with static linking exception

|-

! style="text-align:left;" | Haddock

| Simon Marlow

| Text

| Haskell

| Any

| 2002

| 2.15.0 (2014)

|

|-

! style="text-align:left;" | HeaderDoc

| Apple Inc.

| Text

| AppleScript, Bash, Csh, C, C++, Delphi, IDL, Java, JavaScript, MIG, Pascal, Perl, PHP, Python, Ruby, Tcl

| Any Unix-like

| 2000/09/—

| 8.9.28 (2013)

|

|-

! style="text-align:left;" | Imagix 4D

| Imagix Corp.

| Text

| C, C++, Java

| Windows, Linux, Unix

| 1995

| 7.3

|

|-

! style="text-align:left;" | Javadoc

| Sun Microsystems

| Text

| Java

| Any

| 1995

| 1.6

|

|-

! style="text-align:left;" | JSDoc

| Michael Mathews

| Text

| JavaScript

| Any

| 2024/10/19

| 4.0.4

|

|-

! style="text-align:left;" | mkd

| Jean-Paul Louyot

| Text

| Any with comments

| Unix, Linux, Windows

| 1989

| 2015

|

|-

! style="text-align:left;" | MkDocs

| Tom Christie

| Text

| Python

| Any

| 2014/10/29

| 1.5.3

|

|-

! style="text-align:left;" | Natural Docs

| Greg Valure

| Text

| Any with comments

| Any

| 2003/05/26

| 2.0.2

|

|-

! style="text-align:left;" | NDoc

| Jason Diamond, Jean-Claude Manoli, Kral Ferch

| Binary

| C#

| Windows only

| 2003/07/27

| 1.3.1

|

|-

! style="text-align:left;" | pdoc

|Andrew Gallant

|Text

|Python

|Any

|2013

|1.0.1 (2021)

|

|-

! style="text-align:left;" | perldoc

| Larry Wall

| Text

| Perl

| Any

| 1994

| 5.16.3

|

|-

! style="text-align:left;" | phpDocumentor

| Joshua Eichorn

| Text

| PHP

| Any

| 2000

| 3.0.0

|

|-

! style="text-align:left;" | pydoc

| Ka-Ping Yee

| Text

| Python

| Any

| 2000

| in Python core

|

|-

! style="text-align:left;" | RDoc

| Dave Thomas

| Text

| C, C++, Ruby

| Any

| 2001/12/14

| in Ruby core

|

|-

! style="text-align:left;" | ROBODoc

| Frans Slothouber

| Text

| Any with comments

| Any

| 1995/01/19

| 4.99.36 (2015)

|

|-

! style="text-align:left;" | Sandcastle

| Microsoft

| Text

| .NET

| Windows only

| 2008/05/—

| 2.4.10520 (2016)

|

|-

! style="text-align:left;" | Sphinx

| Georg Brandl

| Text

| Ada, C, C++, Chapel, CMake, Fortran, GraphQL, JavaScript, Matlab, PHP, Python, reStructuredText, Ruby, Rust, VB

| Any

| 2008/03/21

| 8.2.1

|

|-

! style="text-align:left;" | Visual Expert

| Novalys

| Text, Binary

| C#, PL/SQL, Transact-SQL, PowerBuilder

| Windows only

| 1995

| 2017

|

|-

! style="text-align:left;" | VSdocman

| Helixoft

| Text

| VB, VBScript, C#

| Windows only

| 2003 Oct 2

| 9.0

|

|-

! style="text-align:left;" | YARD

| Loren Segal

| Text

| Ruby

| Any

| 2007/02/24

| 0.7.3

|

|-

! Name

! Creator

! Input format

! Languages (alphabet order)

! OS support

! First public release date

! Latest stable version

! Software license

|}

Supported formats

The output formats the generators can write.

{| class="wikitable sortable" style="font-size: 85%; border: gray solid 1px; border-collapse: collapse; text-align: center; width: 100%; table-layout: fixed;"

|- style="background: #ececec"

! style="width:12em" | Generator name

! HTML

! CHM

! RTF

! PDF

! LaTeX

! PostScript

! man pages

! DocBook

! XML

! EPUB

|-

! style="text-align:left;" | Ddoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | docToolchain

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Document! X

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Epydoc

|

|

|

|

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

|

|

|

|

|-

! style="text-align:left;" | fpdoc

|

| Native

|

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

|

|

|

|

|

|-

! style="text-align:left;" | Haddock

|

|

|

|

|

|

|

| bgcolor="#ffffdd" | Partial

|

|

|-

! style="text-align:left;" | HeaderDoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Imagix 4D

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Javadoc

|

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

| bgcolor="#ffffdd" | Indirectly

|

|-

! style="text-align:left;" | JSDoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | MkDocs

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Natural Docs

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | NDoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | pdoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | phpDocumentor

|

| (1.x only)

|

| (1.x only)

|

|

|

| (1.x only)

| (1.x only)

|

|-

! style="text-align:left;" | pydoc

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | RDoc

|

|

|

|

|

|

| bgcolor="#ffffdd" | Indirectly

|

|

|

|-

! style="text-align:left;" | ROBODoc

|

| bgcolor="#ffffdd" | Indirectly

|

| bgcolor="#ffffdd" | Indirectly

|

| bgcolor="#ffffdd" | Indirectly

|

|

|

|

|-

! style="text-align:left;" | Sandcastle

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | Sphinx

|

|

|

| bgcolor="#ffffdd" | Indirectly

|

|

|

|

|

|

|-

! style="text-align:left;" | Visual Expert

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | VSdocman

|

|

|

|

|

|

|

|

|

|

|-

! style="text-align:left;" | YARD

|

|

|

|

|

|

|

|

|

|

|- class="sortbottom" style="background: #ececec"

! Generator name

! HTML

! CHM

! RTF

! PDF

! LaTeX

! PostScript

! man pages

! DocBook

! XML

! EPUB

|}

Other features

{| class="wikitable sortable" style="font-size: 85%; border: gray solid 1px; border-collapse: collapse; text-align: center; width: 100%; table-layout: fixed;"

|- style="background: #ececec"

! style="width:12em" |

! possibility of extended customization

! generated diagrams

! highlighting and linking of generated doc

! parameter types extracted

|-

! style="text-align:left;" | Ddoc

| bgcolor="#90ff90" | with macros

|

|

|

|-

! style="text-align:left;" | docToolchain

| bgcolor="#90ff90" | customizable themes, custom tasks

| bgcolor="#90ff90" | many diagram plugins (plantUML, mermaid, ...)

| bgcolor="#90ff90" | automatic and manual references, table of contents, bibliography, ...

|

|-

! style="text-align:left;" | Document! X

| bgcolor="#90ff90" | customizable HTML based templates, custom comment tags

| bgcolor="#90ff90" | linked graphical object relationship diagrams

| bgcolor="#90ff90" | internal links and links to .NET framework documentation

| bgcolor="#90ff90" | types extracted and linked

|-

! style="text-align:left;" | Doxygen

| bgcolor="#90ff90" | with XSLT

| bgcolor="#90ff90" | caller and callee graphs, dependency graphs, inheritance diagrams, collaboration diagrams

|

|

|-

! style="text-align:left;" | Epydoc

|

|

|

|

|-

! style="text-align:left;" | Haddock

|

|

|

|

|-

! style="text-align:left;" | HeaderDoc

| bgcolor="#90ff90" | Custom headers, footers, code coloring, and other CSS styles in individual pages. Project-wide TOC is generated from a user-defined template.

|

| bgcolor="#90ff90" | Configurable syntax highlighting/coloring with automatic linking to symbols in declaration, ability to manually link to symbols in discussion, etc.

| bgcolor="#90ff90" | Provides warnings if tagged parameters do not match code, parsed parameters included in XML output and Doxygen-style tagfile (-D flag in 8.7). Partial C preprocessor support with -p flag. Support for #if/#ifdef control over documentation inclusion using the -D and -U command-line flags.

|-

! style="text-align:left;" | Imagix 4D

| bgcolor="#90ff90" | customizable through style sheets and CSS

| bgcolor="#90ff90" | linked hierarchy and dependency graphs for function calls, variable sets and reads, class inheritance and interface, and file includes and interface, intra-function flow charts

| bgcolor="#90ff90" | fully cross-linked project-wide, including all hierarchy and dependency graphs, metrics tables, source code snippets, and source files

| bgcolor="#90ff90" | full semantic analysis of source code, including parameter types, conditional compilation directives, macro expansions

|-

! style="text-align:left;" | Javadoc

|

|

|

|

|-

! style="text-align:left;" | JSDoc

|

|

|

|

|-

! style="text-align:left;" | mkd

| bgcolor="#90ff90" | Customisable for all type of comments

| bgcolor="#90ff90" | 'as-is' in comments

| bgcolor="#90ff90" | all general documentation; references, manual, organigrams, ... Including the binary codes included in the comments.

| bgcolor="#90ff90" | all coded comments

|-

! style="text-align:left;" | MkDocs

|

|

|

|

|-

! style="text-align:left;" | Natural Docs

|

|

|

|

|-

! style="text-align:left;" | NDoc

|

|

|

|

|-

! style="text-align:left;" | perldoc

| bgcolor="#90ff90" | Extend the generator classes through Perl programming.

|

| bgcolor="#90ff90" | Only linking

|

|-

! style="text-align:left;" | pdoc

| bgcolor="#90ff90" | overridable Jinja2 templates

|

| bgcolor="#90ff90" | source code syntax highlighting, automatic cross-linking to symbol declarations

|

|-

! style="text-align:left;" | phpDocumentor

| bgcolor="#90ff90" | Smarty-based templates (1.x), Twig-based templates (2+)

| bgcolor="#90ff90" | class inheritance diagrams

| bgcolor="#90ff90" | cross reference to generated documentation, and to php.net function reference

|

|-

! style="text-align:left;" | pydoc

|

|

|

|

|-

! style="text-align:left;" | RDoc

|

|

|

|

|-

! style="text-align:left;" | ROBODoc

|

|

|

|

|-

! style="text-align:left;" | Sphinx

| bgcolor="#90ff90" | Customizable themes (10 first-party); Jinja templating; Python plugins

| bgcolor="#90ff90" | class inheritance diagrams, graphviz, third party (e.g. using aafigure, actdiag, Google Chart, gnuplot, mermaid)

| bgcolor="#90ff90" | Automatic cross-referencing (including between projects), Index; Table of Contents, Syntax highlighting with Pygments

| bgcolor="#90ff90" | custom objects (such as functions and classes)

|-

! style="text-align:left;" | Visual Expert

| bgcolor="#90ff90" | documentation content and styles customizable

| bgcolor="#90ff90" | Class inheritance, call trees, dependencies (impact analysis)

| bgcolor="#90ff90" | internal links between classes, methods, variables, tables, columns...

| bgcolor="#90ff90" | all types extracted

|-

! style="text-align:left;" | VSdocman

| bgcolor="#90ff90" | full customization for all output formats, templates for MSDN-like output, custom XML comment tags

| bgcolor="#90ff90" | linked graphical class diagrams, class inheritance tree

| bgcolor="#90ff90" | internal links and links to .NET framework documentation

| bgcolor="#90ff90" | types extracted and linked

|-

! style="text-align:left;" | YARD

| bgcolor="#90ff90" | customizable Ruby templates

| bgcolor="#90ff90" | class diagrams with extra tool

| bgcolor="#90ff90" | internal classes/modules cross-referenced and Ruby source highlighted

|

|}

See also

  • Code readability
  • Documentation generator
  • Literate programming
  • Self-documenting code

Notes

References