Sphinx Stack documentation¶
The Sphinx Stack is a well-crafted template repository for Sphinx projects, and is the standard documentation setup at Canonical.
The repository contains a setup for Sphinx and its required extensions, plus basic scaffolding for standard document types. A CLI is provided for building the documents and checking their quality.
The Sphinx Stack contains everything you need to bootstrap and host new documentation. You can copy it as a standalone documentation repository, or incorporate into a project’s codebase.
The Sphinx Stack is for all employees at Canonical, and is available to writers and developers looking to begin a robust and capable Sphinx project.
In this documentation¶
Getting started¶
Document elements¶
Customization¶
Quality¶
Lifecycle management¶
How the stack works¶
How this documentation is organized¶
This documentation uses the Diátaxis documentation structure.
The tutorial walks through copying the Sphinx Stack template, removing unneeded files, and performing the required initial configuration before the first build.
How-to guides cover specific tasks: building locally, running documentation checks, publishing on Read the Docs, updating the stack, and enabling optional extensions.
Reference provides the list of default Sphinx extensions, GitHub workflow definitions, and the reST and MyST syntax guides.
Explanation describes the architecture of the Sphinx Stack, covering its core components (Sphinx, Python, extensions), the Make-based build system, and sitemap generation.
Project and community¶
The Sphinx Stack is a Canonical open source project that forms part of the tooling supporting documentation across Ubuntu and other Canonical offerings.