Table of contents


DocGen is a static website generator that's ideal for making technical user guides for software products.


  • Self-contained website

    Creates a static website that works on any server, or as local files (CD, shared drive etc).

  • Optional PDF

    Also publishes the website content as a single PDF, using wkhtmltopdf.

  • Human-friendly input

    Write in plain text, or the human-friendly CommonMark format (Markdown).

  • Easy to version control

    Easily version control software documentation in sync with its product.

  • Table of contents

    Automatically creates tables of contents, with links and PDF page numbers.

  • Code syntax highlighting

    Automatically highlights code blocks, using Highlight.js, with language detection.

  • Mathematical expressions

    Displays mathematical expressions without plugins, using either KaTeX or MathJax.

  • Branding and metadata

    Easily brand with a logo, attribute ownership, and attach release notes.

DocGen makes it easy for anyone to create high-quality technical documentation.

How it works

  • "You write in plain text or human-friendly CommonMark"

  • "DocGen styles and publishes all your content as a website"

  • "DocGen also creates an equivalent PDF copy"

  • Flexible Input Formats
  • Plain text
  • CommonMark (Markdown)
  • HTML
  • LaTeX mathematical expressions
  • Image diagrams
  • Attach other documents
  • Configurable Metadata
  • Branding (logo, title, organization)
  • License, copyright, and legal markings
  • Ownership and attribution
  • Version information
  • Release notes (change log)
DocGen is probably not the right tool for precision PDF layout. Or for product configurators which need to output variants based on a common template. Docgen is intended more for free-form, human generated content which is regularly updated and refactored, and standardised for each product release.

Browser support

Output created by DocGen works in modern browsers (desktop and mobile devices).

Quick start

  • In just three commands:
  • Install DocGen
  • Scaffold an empty template
  • Generate a static website
Enter these commands in the terminal:

sudo npm install -g docgen-tool
docgen scaffold
docgen run -o $HOME/docgen-example

See the installation guide for more detailed instructions.