Sphinx (documentation generator)

Sphinx is a documentation generator written and used by the Python community. It is written in Python, and also used in other environments.

Purpose and function
Sphinx converts reStructuredText files into HTML websites and other formats including PDF, EPub, Texinfo and man.

reStructuredText is extensible, and Sphinx exploits its extensible nature through a number of extensions – for autogenerating documentation from source code, writing mathematical notation or highlighting source code, etc.

HTML themes
Sphinx provides the ability to apply themes to HTML and HTML-based formats. Sphinx has several built-in themes, including alabaster, classic, sphinxdoc, and scrolls. Popular themes that can be installed as Python modules include:
 * Read the Docs
 * Sphinx Bootstrap
 * Guzzle
 * Documatt

History and use
The first public release, version 0.1.61611, was announced on March 21, 2008. It was developed for, and is used extensively by, the Python project for documentation.

Since its introduction in 2008, Sphinx has been adopted by many other important Python projects, including Bazaar, SQLAlchemy, MayaVi, SageMath, SciPy, Django and Pylons. It is also used for the Blender user manual and Python API documentation.

In 2010, Eric Holscher announced the creation of the Read the Docs project as part of an effort to make maintenance of software documentation easier. Read the Docs automates the process of building and uploading Sphinx documentation after every commit.

Linux kernel
The Linux kernel's documentation subsystem underwent changes in 2016. Starting in the 4.7 cycle, the documentation started switching over to use Sphinx.
 * Talk at LCA2016:
 * Talk at LCA2017: