ROCm documentation toolchain#
4 min read time
Our documentation relies on several open source toolchains and sites.
rocm-docs-core is an AMD-maintained project that applies customization for our documentation. This project is the tool most ROCm repositories use as part of the documentation build. It is also available as a pip package on PyPI.
See the user and developer guides for rocm-docs-core at rocm-docs-core documentation.
Sphinx is a documentation generator originally used for Python. It is now widely used in the open source community.
Sphinx External ToC#
Sphinx External ToC is a Sphinx
extension used for ROCm documentation navigation. This tool generates a navigation menu on the left
based on a YAML file (
_toc.yml.in) that contains the table of contents.
Sphinx-book-theme is a Sphinx theme that defines the base appearance for ROCm documentation. ROCm documentation applies some customization, such as a custom header and footer on top of the Sphinx Book Theme.
Sphinx design is a Sphinx extension that adds design functionality. ROCm documentation uses Sphinx Design for grids, cards, and synchronized tabs.
Doxygen is a documentation generator that extracts information from inline code. ROCm projects typically use Doxygen for public API documentation (unless the upstream project uses a different tool).
Breathe is a Sphinx plugin to integrate Doxygen content.
Markedly Structured Text (MyST) is an extended flavor of
Markdown (CommonMark) influenced by reStructuredText (RST) and
Sphinx. It’s integrated into ROCm documentation by the Sphinx extension
A MyST syntax cheat sheet is available on the Jupyter reference site.
Read the Docs#
Read the Docs is the service that builds and hosts the HTML documentation generated using Sphinx to our end users.