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.

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.