A curated list of awesome extra libraries, software and resources for Sphinx (Python Documentation Generator). Inspired by awesome-sqlalchemy. (See also other awesome lists!)
Licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Your contributions are welcome.
Table of Contents
Homepage: https://www.sphinx-doc.org/
Source: https://github.com/sphinx-doc/sphinx
Docs: https://www.sphinx-doc.org/en/master/develop.html
Docs: https://www.sphinx-doc.org/en/master/usage/restructuredtext/
Docs: https://www.sphinx-doc.org/en/master/glossary.html
Docs: https://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html
Docs: https://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#line-blocks
Docs: https://docutils.sourceforge.net/docs/ref/rst/directives.html
Docs: https://docs.python.org/devguide/documenting.html#sections
- Documenting Your Project With Sphinx
Exercises for the Sphinx Tutorial that Brandon Rhodes often gives at PyCon.
Source: https://github.com/sphinx-contrib
Docs: https://www.sphinx-doc.org/en/master/extensions.html
Docs: https://www.sphinx-doc.org/en/master/extdev/
Docs: https://www.sphinx-doc.org/en/master/extdev/appapi.html
- breathe
ReStructuredText and Sphinx bridge to Doxygen.
- docxsphinx
Sphinx extension for building Microsoft Word docx files.
- javasphinx
Sphinx extension for documenting Java projects.
- numpydoc
NumPy's Sphinx extensions.
- Releases
A Sphinx changelog-generating extension.
- autoclasstoc
Make easier-to-navigate class documentation.
- sphinx-autodoc-annotation
Use Python 3 annotations in sphinx-enabled docstrings.
- sphinx-autodoc-typehints
Type hints support for the Sphinx autodoc extension
- sphinx-fortran-extension
A Fortran domain and autodocumentation module for Sphinx.
- sphinx-gallery
Sphinx extension for automatic generation of an example gallery.
- sphinx-git
git Changelog for Sphinx.
- sphinx-jekyll-builder
sphinx builder that outputs jekyll compatible markdown files with frontmatter
- sphinx-markdown-builder
Sphinx builder that outputs markdown files.
- Sphinx-prompt
Sphinx directive to add unselectable prompt.
- Sphinx-pyreverse
Simple sphinx wrapper around pyreverse (from pylint suit) to generate UML diagrams from modules.
- sphinxcontrib-autojs
The auto JavaScript documentation Sphinx extension.
- sphinxcontrib-autoprogram
Provides an automated way to document CLI programs.
- sphinxcontrib-blockdiag
Sphinx extension for embedding blockdiag diagrams.
- sphinxcontrib-constdata
Extension that allows showing values, listing tables, and generating links from CSV, JSON and YAML files. Instead of hard-coding values in the text, you write constants or queries replaced with value(s) from the external file(s). If the file contains language-sensitive strings, they can be translated with the rest of the Sphinx docs.
- sphinxcontrib-cldomain
Common Lisp domain for Sphinx.
- sphinxcontrib-docbookrestapi
Sphinx extension that generates documentation for api-site from RST files.
- sphinxcontrib-fulltoc
Extension for Sphinx to make the sidebar show a full table of contents instead of just the local headings.
- sphinxcontrib-httpdomain
Provides a Sphinx domain for describing RESTful HTTP APIs. Also supports reflection for Flask, Bottle, and Tornado apps.
- cornice.ext.sphinxext
Sphinx extension to build RESTful HTTP API documentation from Pyramid Cornice docstrings.
- sphinxcontrib-programoutput
Sphinx extension to include program output into documents.
- sphinxcontrib-napoleon
Napoleon is a pre-processor that parses NumPy and Google style docstrings.
- Tut
Tut is a tool that helps you write tutorial style documentation using Sphinx.
- Sphinx-Needs
Sphinx-Needs allows the definition, linking, and filtering of need-objects: requirements, specifications, implementations, test cases, and more.
- nbsphinx
Parse, execute, and generate output from Jupyter notebooks as HTML and LaTeX. Markdown in .ipynb is converted to RST with Pandoc. Markdown cells may contain toctree markup for generating tables of contents including .ipynb and .rst files.
- Sphinxcontrib-proof
Sphinx extension to typeset definitions, theorems, proofs, etc.
- Sphinxcontrib-packages
A sphinx extension to list tools installed on the machine generating the documentation (python versions, binaries, python packages, LaTeX packages, etc.). Useful to know which tools are installed on Readthedocs when writing your own extension.
- sphinx-sitemap
sphinx-sitemap silently generates a sitemap for HTML builds.
- sphinx-jsonschema
Turns a jsonschema into an integral part of your documentation. Useful when you want a single source for both validation and documentation of your JSON entities.
- sphinx-gitstamp
Makes the git timestamp for each page available to HTML templates.
- sphinx-intl
Sphinx utility that make it easy to translate and to apply translation.
- django-sphinxdoc
Integrate Sphinx documentation into a Django-powered website. Allows you to use your sites templates, auth and so on. Offers search via Haystack.
- ome-documentation
Sphinx-based documentation for the Open Microscopy Environment.
- riv.vim
ReStructured text editing extensions for Vim, GVim, MacVim; optionally with InstantRst gevent live reload.
- sphinx-gui
Desktop GUI for editing Sphinx docs.
- sphinx-markdown-sample
Markdown based sphinx the documentation generator sample.
- tinkerer
Blog engine static HTML5 generator with categories, tags, landing page, nav sidebar, RSS powered by Sphinx and responsive Jinja templates.
- ablog
ABlog is a Sphinx extension that converts any documentation or personal website project into a full-fledged blog with atom feeds, archive pages, blog sidebars, Disqus integration, Font-Awesome integration and easy GitHub Pages deploys
- sphobjinv
sphobjinv is a Python package and command-line tool for inspection and manpulation of the objects inventories (objects.inv files) generated by Sphinx's html builder, allowing simple determination of correct cross-reference syntax and construction of objects.inv files for documentation sets not created in Sphinx.
- MyST
MyST allows you to write Sphinx documentation entirely in markdown. MyST markdown provides a markdown equivalent of the reStructuredText syntax, meaning that you can do anything in MyST that you can do with reStructuredText. It is an attempt to have the best of both worlds: the flexibility and extensibility of Sphinx with the simplicity and readability of Markdown.
- Jupyter Book
Jupyter Book builds books into formats like HTML and PDF from MyST Markdown and Jupyter notebooks with Sphinx. Jupyter Books can include interactive Jupyter notebooks, interactive data visualizations, and comments and annotations.
Docs: https://www.sphinx-doc.org/en/master/templating.html
Source: https://github.com/sphinx-doc/sphinx/tree/master/sphinx/themes
- Alabaster
Modified Kr Sphinx doc theme.
- flask-sphinx-themes
Sphinx Themes for Flask related projects and Flask itself.
- krTheme Sphinx Style
Sphinx theme Kenneth Reitz uses for most projects e.g. Requests.
- Sphinx Readable Theme
A clean and readable Sphinx theme with focus on autodoc – documentation from docstrings.
- sphinx-better-theme
A theme for Sphinx that looks nice, is easy to style with CSS, works well on small screens and mobile devices, and organizes the page better.
- sphinx_rtd_theme
Sphinx theme for readthedocs.io.
- sphinx-typo3-theme
Modern, responsive, standalone Sphinx theme for TYPO3 documentation. Available from PyPi.
- sphinx-theme-graphite
A slightly muted light-on-dark theme for the Sphinx document generator using only CSS.
- sphinxjp.themes.basicstrap
Sphinx theme built with responsive Bootstrap.
- sublee-sphinx-themes
Sphinx themes Heungsub Lee uses for his projects e.g. Energy, Korean, Ranking, TrueSkill.
- sphinx-py3doc-enhanced-theme
A theme based on the theme of https://docs.python.org/3/ with some responsive enhancements.
- sphinx-bootstrap-theme
Integrates Bootstrap CSS/Javascript framework responsive design with any Bootswatch CSS themes.
- sphinx-foundation-theme
Theme based on the Foundation 4 CSS framework.
- sphinx-nameko-theme
Forked from Sphinx Readable Theme, combined with elements of the Read The Docs theme.
- sphinx-guzzle-theme
Sphinx theme used by Guzzle: http://guzzlephp.org
- sphinx-hbp-theme
HumanBrainProject Collaboratory Sphinx Theme.
- crate-docs-theme
This project provides a Sphinx theme for Crate's documentation that is compatible with ReadTheDocs.
- solar-theme
Solar is an attempt to create a theme for the Python Sphinx documentation generator based on the Solarized color scheme.
- sphinxtrap-theme
Sphinxtrap is a minimalist bootstrap2-based + fontawesome sphinx theme.
- mdn-sphinx-theme
This is a version of the Mozilla Developer Network theme, for the Sphinx documentation engine.
- sphinx_adc_theme
The Apple Developer Connection theme for sphinx
- Read the Docs
Read the Docs hosts documentation, making it fully searchable and easy to find. You can import your docs using any major version control system, including Mercurial, Git, Subversion, and Bazaar. It supports webhooks so your docs get built when you commit code. There's also support for versioning so you can build docs from tags and branches of your code in your repository. A full list of features is available.
- Okydoky
Automated docs builder using Sphinx/GitHub/Distribute for private use.
- sphinx-autobuild
Watch a Sphinx directory and rebuild the documentation when a change is detected.
- sphinx-server
A universal Sphinx Server based on sphinx-autobuild with Docker support that can be used in production (self-hosted) and for documentation development, bundled with PlantUML, Graphviz and HTTP authentication.
- sphinx-me
Wraps your README-only projects in a dynamic Sphinx shell for hosting on Read the Docs.
- Sphinx to GitHub
Script to prepare Sphinx html output for GitHub Pages.
- ghp-import
Script to overwrite a
gh-pages
/master
branch with a.nojekyll
file for GitHub Pages.