Comparison of documentation generators
From Wikipedia, the free encyclopedia
The following tables compare general and technical information for a number of documentation generators. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
Contents |
[edit] General information
Basic general information about the generators: creator/company, license/price etc.
Name | Creator | First public release date | Latest stable version | Cost (USD) | Software license |
---|---|---|---|---|---|
Autoduck | Eric Artzt | 1993 | 2.0 | Free | Freeware |
BI Documenter URL | Mienasoft | 2006 | 1.5 | From $195 | Proprietary |
DB Manual URL | Blue Oceans Ltd | 2006 | 1.3 | from $99 | Proprietary |
DBScribe URL | Leadum Software | 2007 | 1.1 | from $39 | Proprietary |
classdoc | Jens Gulden | 2001 | 1.0 | Free | GPL |
CppDoc | Richard Feit | November 23, 1998 | 2.3.1 | Free | Proprietary |
Ddoc | Walter Bright | September 19, 2005 | DMD 1.010 / GDC 0.14 | Free | Freeware / GPL |
Doc-O-Matic | toolsfactory software inc | Nov. 2000 | 6.1 | from US$299, Free Express Edition | Proprietary |
DOC++ | Dragos Acostachioaie. | December 22, 2002 | 3.4.10 | Free | ? |
Document! X | Innovasys | 1998 | 5.2.1.3 | from US$599 | Proprietary |
Doxygen | Dimitri van Heesch | 1997 | 1.5.5 | Free | GPL |
Epydoc | Edward Loper | January 2002 | 2.1 | Free | MIT License |
GenHelp URL | FraserSoft | Oct. 1998 | 5.6.7 | from US$209 | Proprietary |
HeaderDoc | Apple Computer | ? | 8.6 | Free | APSL |
Help Generator URL | Agora Software BV | August 2004 | 4.0 | US$299 | Proprietary |
Javadoc | Sun Microsystems | ? | 1.5 | Free (Part of the Java 2 SDK) | Proprietary |
JSDoc URL | Michael Mathews | July 2001 | 1.10.2 | Free | GPL |
JsDoc Toolkit URL | Michael Mathews | 2007? | 2.0.0 | Free | MIT License |
KDOC | Sirtaj Singh Kang | 1999 | 3.0.1 | Free | ? |
Natural Docs | Greg Valure | May 26, 2003 | 1.35 | Free | GPL |
NDoc | Kevin Downs | July 27, 2003 | 1.3.1 | Free | GPL |
phpDocumentor | Joshua Eichorn | 2000 | 1.3.0 | Free | LGPL |
Project Analyzer | Aivosto Oy | 8.0 | From US$299 | Proprietary | |
RDoc | Dave Thomas | December 14, 2001 | in Ruby core | Free | Ruby License |
ROBODoc | Frans Slothouber | January 19, 1995 | 4.99.36 | Free | GPL |
SandCastle | Microsoft | ? | June 2007 CTP | Free | Proprietary |
TwinText | PTLogica | 2002 | 2008.0.406 | US$169 | Proprietary |
VBDOX URL | Mihayl Stamenov | October 26, 2001 | 2.1.0 | Free | GPL |
VSdocman | Helixoft | Oct. 2000 | 2.21 | from US$58 | Proprietary |
jGrouseDoc URL | Denis Riabtchik | Apr. 2007 | 1.5 | Free | BSD |
Haddock | Simon Marlow | 2002 | 2.0.0.0 (2008) | Free | BSD |
Universal Report URL | Universal Software | 2001-2008 | 8.1 | $299 | Free Education / Proprietary |
Name | Creator | First public release date | Latest stable version | Cost (USD) | Software license |
[edit] Operating system support
The operating systems the generators can run on.
Windows | Mac OS X | Linux | BSD | Unix | |
---|---|---|---|---|---|
Autoduck | Yes | No | No | No | No |
BI Documenter | Yes | No | No | No | No |
DB Manual | Yes | No | No | No | No |
DBScribe | Yes | No | No | No | No |
classdoc | Yes | Yes | Yes | Yes | Yes |
CppDoc | Yes | No | Yes | No | No |
Ddoc | Yes | Yes3 | Yes | Yes3 | No |
Doc-O-Matic | Yes | No | No | No | No |
DOC++ | Yes | No? | Yes | No? | No? |
Document! X | Yes | No | No | No | No |
Doxygen | Yes | Yes | Yes | Yes | Yes |
Epydoc | Yes | Yes | Yes | Yes | Yes |
GenHelp | Yes | No | No | No | No |
HeaderDoc | No | Yes | Yes | Yes | Yes |
Help Generator | Yes | No | No | No | No |
Javadoc | Yes | Yes | Yes | Yes | Yes |
JSDoc | Yes | Yes | Yes | Yes | Yes |
JsDoc Toolkit | Yes | Yes | Yes | Yes | Yes |
KDOC | Partial | Yes | Yes | Yes | Yes |
Natural Docs | Yes | Yes | Yes | Yes | Yes |
NDoc | Yes | No | No | No | No |
phpDocumentor | Yes | Yes | Yes | Yes | Yes |
Project Analyzer | Yes | No | No | No | No |
RDoc | Yes | Yes | Yes | Yes | Yes |
ROBODoc | Yes | Yes | Yes | Yes | Yes |
SandCastle | Yes | No | No | No | No |
TwinText | Yes | No | No | No | No |
VBDOX | Yes | No | No | No | No |
VSdocman | Yes | No | No | No | No |
jGrouseDoc | Yes | Yes | Yes | Yes | Yes |
Haddock | Yes | Yes | Yes | Yes | Yes |
Universal Report | Yes | No | No | No | No |
Windows | Mac OS X | Linux | BSD | Unix |
Note (4): GNU D Compiler.
[edit] Language support
The factual accuracy of this section is disputed. Please see the relevant discussion on the talk page.(March 2008) |
The programming languages the generators recognize.
C/C++ | Java | C# | VB / VBScript | Delphi / Pascal | Ada | D | IDL | .NET1 | Access | |
---|---|---|---|---|---|---|---|---|---|---|
Autoduck | Yes | No | No | Yes | No | No | No | No | No | No |
BI Documenter | No | No | No | No | No | No | No | No | Yes | No |
DB Manual | No | No | No | No | No | No | No | No | Yes | No |
DBScribe | No | No | No | No | No | No | No | No | No | No |
classdoc | No | Yes | No | No | No | No | No | No | No | No |
CppDoc | Yes | No | No | No | No | No | No | No | No | No |
Ddoc | No | No | No | No | No | No | Yes | No | No | No |
Doc-O-Matic | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | No |
DOC++ | Yes | Yes | No | No | No | No | No | Yes | No | No |
Document! X | Yes | No | Yes | Yes | No | No | No | Yes | Yes | Yes |
Doxygen | Yes | Yes | Yes | No | No | No | Partial | Yes | No | No |
Epydoc | No | No | No | No | No | No | No | No | No | No |
GenHelp | Yes | No | Yes | No | Yes | No | No | No | Yes | No |
HeaderDoc | Yes | Yes | No | No | Yes | No | No | No | No | No |
Help Generator | Yes | No | Yes | Yes | No | No | No | No | Yes | Yes |
Javadoc | No | Yes | No | No | No | No | No | No | No | No |
JSDoc | No | No | No | No | No | No | No | No | No | No |
JsDoc Toolkit | No | No | No | No | No | No | No | No | No | No |
KDOC | Yes | No | No | No | No | No | No | Yes | No | No |
Natural Docs | Partial | Partial | Yes | Partial | Partial | Partial | No | No | No | No |
NDoc | No | No | Yes | No | No | No | No | No | Yes | No |
phpDocumentor | No | No | No | No | No | No | No | No | No | No |
Project Analyzer | No | No | No | Yes | No | No | No | No | Yes | No |
RDoc | Partial | No | No | No | No | No | No | No | No | No |
ROBODoc | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
TwinText | Yes | Yes | Yes | Yes | Yes | Yes | Partial | Yes | Yes | No |
VBDOX | No | No | No | Yes | No | No | No | No | No | No |
VSdocman | No | No | No | Yes | No | No | No | No | Yes | No |
jGrouseDoc | No | No | No | No | No | No | No | No | No | No |
Haddock | No | No | No | No | No | No | No | No | No | No |
Universal Report | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes |
C/C++ | Java | C# | VB / VBScript | Delphi / Pascal | Ada | D | IDL | .NET1 | Access |
PHP | Perl | Python | Ruby | JavaScript | ActionScript | PL/SQL | Tcl | Haskell | Any With Comments2 | |
---|---|---|---|---|---|---|---|---|---|---|
Autoduck | No | No | No | No | No | No | No | No | No | No |
BI Documenter | No | No | No | No | No | No | No | No | No | No |
DB Manual | No | No | No | No | No | No | No | No | No | No |
DBScribe | No | No | No | No | No | No | Yes | No | No | No |
classdoc | No | No | No | No | No | No | No | No | No | No |
CppDoc | No | No | No | No | No | No | No | No | No | No |
Ddoc | No | No | No | No | No | No | No | No | No | No |
Doc-O-Matic | Yes | No | No | No | Yes | No | No | No | No | Yes |
DOC++ | No | No | No | No | No | No | No | No | No | No |
Document! X | No | No | No | No | No | No | Yes | No | No | No |
Doxygen | Yes | No | Yes | No | No | No | No | No | No | No |
Epydoc | No | No | Yes | No | No | No | No | No | No | No |
GenHelp | No | No | No | No | No | No | No | No | No | No |
HeaderDoc | Yes | Yes | No | No | Yes | No | No | No | No | No |
Javadoc | No | No | No | No | No | No | No | No | No | No |
JSDoc | No | No | No | No | Yes | No | No | No | No | No |
JsDoc Toolkit | No | No | No | No | Yes | No | No | No | No | No |
KDOC | No | No | No | No | No | No | No | No | No | No |
Natural Docs | Partial | Yes | Partial | Partial | Partial | Yes | Partial | Partial | No | Yes |
NDoc | No | No | No | No | No | No | No | No | No | No |
phpDocumentor | Yes | No | No | No | No | No | No | No | No | No |
Project Analyzer | No | No | No | No | No | No | No | No | No | No |
RDoc | No | No | No | Yes | No | No | No | No | No | No |
ROBODoc | Yes | Yes | Yes | Yes | Yes | Partial | Yes | Yes | No | Yes |
TwinText | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
VBDOX | No | No | No | No | No | No | No | No | No | No |
VSdocman | No | No | No | No | No | No | No | No | No | No |
jGrouseDoc | No | No | No | No | Yes | No | No | No | No | No |
Haddock | No | No | No | No | No | No | No | No | Yes | No |
Universal Report | Yes | Yes | Yes | No | Yes | Yes | Yes | No | No | Yes |
PHP | Perl | Python | Ruby | JavaScript | ActionScript | PL/SQL | Tcl | Haskell | Any With Comments2 |
Note (1): .NET is not a programming language, but is listed here for convenience.
Note (2): Generators listed here can be extended to support any language that has comments.
[edit] Input formats
The input formats the generators can read.
Text | Binary | |
---|---|---|
Autoduck | Yes | No |
BI Documenter | No | Yes |
DB Manual | No | Yes |
DBScribe | No | Yes |
classdoc | No | Yes |
CppDoc | Yes | No |
Ddoc | Yes | No |
Doc-O-Matic | Yes | No |
DOC++ | Yes | No (except Java class files) |
Document! X | Yes | Yes |
Doxygen | Yes | No |
Epydoc | Yes | No |
GenHelp | Yes | No |
HeaderDoc | Yes | No |
Help Generator | Yes | Yes |
Javadoc | Yes | No |
JSDoc | Yes | (n/a) |
JsDoc Toolkit | Yes | (n/a) |
KDOC | Yes | No |
Natural Docs | Yes | No |
NDoc | No | Yes |
phpDocumentor | Yes | No |
Project Analyzer | Yes | Yes |
RDoc | Yes | No |
ROBODoc | Yes | No |
TwinText | Yes | Yes |
VBDOX | Yes | No |
VSdocman | Yes | No |
jGrouseDoc | Yes | No |
Haddock | Yes | No |
Universal Report | Yes | No |
Text | Binary |
[edit] Output formats
The output formats the generators can write.
HTML | CHM | RTF | LaTeX | PostScript | man pages | DocBook | XML | ||
---|---|---|---|---|---|---|---|---|---|
Autoduck | No | No | Yes | No | No | No | No | No | No |
BI Documenter | Yes | Yes | No | No | No | No | No | No | No |
DB Manual | Yes | Yes | No | No | No | No | No | No | No |
DBScribe | Yes | Yes | Yes | No | No | No | No | No | No |
classdoc | Yes | No | No | No | No | No | No | No | No |
CppDoc | Yes | No | No | No | No | No | No | No | No |
Ddoc | Yes | Yes4 | No | Yes4 | Yes4 | Yes4 | Yes4 | No | Yes4 |
Doc-O-Matic | Yes | Yes | Yes | Yes | No | No | No | No | Yes |
DOC++ | Yes | No | No | No | Yes | No | No | No | No |
Document! X | Yes | Yes | No | No | No | No | No | No | No |
Doxygen | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
Epydoc | Yes | No | No | Yes | Indirectly5 | Indirectly5 | No | No | No |
GenHelp | Yes | Yes | Yes | No | No | No | No | No | No |
HeaderDoc | Yes | No | No | No | No | No | Yes | No | Yes |
Help Generator | Yes | Yes | Yes | No | No | No | No | No | Yes |
Javadoc | Yes | No | No | No | No | No | No | No | No |
JSDoc | Yes | No | No | No | No | No | No | No | (planned) |
JsDoc Toolkit | Yes | No | No | No | No | No | No | No | Yes+JSON |
KDOC | Yes | No | No | No | No | No | No | No | No |
Natural Docs | Yes | No | No | No | No | No | No | No | No |
NDoc | Yes | Yes | No | No | No | No | No | No | No |
phpDocumentor | Yes | Yes | No | Yes | No | No | No | Yes | Yes |
Project Analyzer | Yes | Yes | Yes | Yes | No | No | No | No | No |
RDoc | Yes | No | No | No | No | No | No | No | No |
ROBODoc | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
TwinText | Yes | Yes | No | No | No | No | No | No | No |
VBDOX | Yes | Yes | Yes | No | No | No | No | No | No |
VSdocman | Yes | Yes | Yes | No | No | No | No | No | No |
jGrouseDoc | Yes | No | No | No | No | No | No | No | Yes |
Haddock | Yes | Yes | No | No | No | No | No | Partial | No |
Universal Report | Yes | No | Yes | Yes | Yes | Yes | No | No | No |
HTML | CHM | RTF | LaTeX | PostScript | man pages | DocBook | XML |
Note (4): Ddoc have macro system which can be customized to output any desired format. CHM, groff (manpages), XHTML, XML, LaTeX (so PostScript and PDF) was tested. They are not currently included in standard distribution. Standard HTML output also is generated using macros and can be redefined.
Note (5): Though not officially supported as an output format, Epydoc uses LaTeX and PostScript as intermediate steps to produce the final PDF documentation.
[edit] Other features
possibility of extended customization | generated diagrams | highlighting and linking of generated doc | parameter types extracted | |
---|---|---|---|---|
Autoduck | ||||
BI Documenter | ||||
DB Manual | ||||
DBScribe | ||||
classdoc | ||||
CppDoc | ||||
Ddoc | with macros | |||
Doc-O-Matic | full customization for all output formats, template for MSDN and other lookalike output, custom XMLDoc/JavaDoc tags | local, module and global graphical class hierarchies, local text class hierarchies | fully cross linked project wide, automatic inter-project links, automatic links into framework documentation like MSDN, Borland/CodeGear Help | types extracted and linked |
DOC++ | ||||
Document! X | customizable HTML based templates, custom comment tags | linked graphical object relationship diagrams | internal links and links to .NET framework documentation | types extracted and linked |
Doxygen | with XSLT | caller and callee graphs, dependency graphs, inheritance diagrams, collaboration diagrams | ||
Epydoc | ||||
HeaderDoc | ||||
Help Generator | ||||
Javadoc | ||||
JSDoc | Yes | |||
JsDoc Toolkit | Yes | |||
KDOC | ||||
Natural Docs | ||||
NDoc | ||||
phpDocumentor | Smarty-based templates | class inheritance diagrams | cross reference to generated documentation, and to php.net function reference | Yes |
Project Analyzer | File dependencies, inheritance, control flow, data flow, variable access, class instantiation, data
declaration, Form.Show order, procedure calls, project dependencies, file belongs to project, class cohesion. |
Cross-referenced source code | ||
RDoc | ||||
ROBODoc | ||||
TwinText | 20 CSS styles. Well documented CSS facilitates customization. | ASCII diagramming and picture importing. | Table of Contents, Index, and per-page cross referencing. | Method/Function parameters extracted and linked. |
VBDOX | ||||
VSdocman | ||||
jGrouseDoc | With XSLT | cross reference to generated documentation | Yes | |
Haddock | Yes | Yes | ||
Universal Report | customizable HTML based templates, custom comment tags | linked graphical object relationship diagrams | internal links between routines and objects | data types extracted and linked |
possibility of extended customization | generated diagrams | highlighting and linking of generated doc | parameter types extracted |