Welcome — Sphinx documentation

Sphinx makes it easy to create intelligent and beautiful documentation.

Here are some of Sphinx’s major features:

  • Output formats: HTML (including Windows HTML Help), LaTeX (for printable
    PDF versions), ePub, Texinfo, manual pages, plain text

  • Extensive cross-references: semantic markup and automatic links for
    functions, classes, citations, glossary terms and similar pieces of
    information

  • Hierarchical structure: easy definition of a document tree, with automatic
    links to siblings, parents and children

  • Automatic indices: general index as well as a language-specific module
    indices

  • Code handling: automatic highlighting using the Pygments highlighter

  • Extensions: automatic testing of code snippets, inclusion of docstrings
    from Python modules (API docs) via built-in extensions, and much more functionality via third-party
    extensions.

  • Themes: modify the look and feel of outputs via creating themes, and re-use many third-party themes.

  • Contributed extensions: dozens of extensions contributed by users; most of them installable from PyPI.

Sphinx uses the reStructuredText markup language by default, and can read
MyST markdown via third-party extensions. Both of these
are powerful and straightforward to use, and have functionality
for complex documentation and publishing workflows. They both build upon
Docutils to parse and write documents.

See below for how to navigate Sphinx’s documentation.

See also

The Sphinx documentation Table of Contents has
a full list of this site’s pages.