bundle.docs

Submodules

Classes

DocsBuilder

Orchestrates Sphinx documentation builds.

DocsConfig

Configuration for a Sphinx documentation build.

Package Contents

class bundle.docs.DocsBuilder(config: bundle.docs.config.DocsConfig)[source]

Orchestrates Sphinx documentation builds.

Creates an ephemeral staging directory with generated conf.py and index.md, then invokes sphinx-build via subprocess.

config
async build() pathlib.Path[source]

Generate Sphinx project files and run the build.

Returns:

Path to the output directory containing built HTML.

class bundle.docs.DocsConfig(/, **data: Any)[source]

Bases: bundle.core.data.Data

Configuration for a Sphinx documentation build.

project_name: str = 'TheBundle'
project_version: str = ''
author: str = ''
source_dir: pathlib.Path = None
output_dir: pathlib.Path = None
package_dirs: list[str] = None
autoapi_dirs: list[str] = None
theme: str = 'furo'
include_readmes: bool = True
extensions: list[str] = None
generate_conf_py() str[source]

Render a complete Sphinx conf.py as a string.