Files
ROCm/docs/contribute/toolchain.md
2024-02-09 17:03:40 +01:00

2.7 KiB

<head> </head>

ROCm documentation toolchain

Our documentation relies on several open source toolchains and sites.

rocm-docs-core

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 {doc}rocm-docs-core documentation<rocm-docs-core:index>.

Sphinx

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

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

Sphinx design is a Sphinx extension that adds design functionality. ROCm documentation uses Sphinx Design for grids, cards, and synchronized tabs.

Doxygen

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

Breathe is a Sphinx plugin to integrate Doxygen content.

MyST

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 myst-parser. 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.