86 lines
2.3 KiB
Python
86 lines
2.3 KiB
Python
# Configuration file for the Sphinx documentation builder.
|
|
#
|
|
# For the full list of built-in configuration values, see the documentation:
|
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
import sys
|
|
|
|
sys.path.insert(0, os.path.abspath('.'))
|
|
sys.path.insert(0, os.path.abspath('..'))
|
|
|
|
# -- Project information -----------------------------------------------------
|
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
|
|
|
|
import dump_things_service
|
|
|
|
project = 'dump-things-service'
|
|
copyright = '2025-2026, Christian Mönch'
|
|
author = 'Christian Mönch'
|
|
release = dump_things_service.__version__
|
|
|
|
# -- General configuration ---------------------------------------------------
|
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
|
|
extensions = [
|
|
'sphinx.ext.autosummary',
|
|
'sphinx.ext.autodoc',
|
|
'sphinx_autodoc_typehints',
|
|
'sphinx.ext.viewcode',
|
|
'sphinx.ext.intersphinx',
|
|
'sphinx.ext.napoleon',
|
|
'myst_parser',
|
|
]
|
|
|
|
templates_path = ['_templates']
|
|
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
|
|
|
|
primary_domain = 'py'
|
|
autoclass_content = "both"
|
|
|
|
# autodoc settings
|
|
autodoc_default_options = {
|
|
'members': True,
|
|
'undoc-members': True,
|
|
'show-inheritance': True,
|
|
}
|
|
autosummary_generate = True
|
|
|
|
typehints_use_signature = True
|
|
typehints_use_signature_return = True
|
|
|
|
# Napoleon settings (Google/NumPy style docstrings)
|
|
napoleon_google_docstring = True
|
|
napoleon_numpy_docstring = True
|
|
|
|
# MyST settings (Markdown support)
|
|
myst_enable_extensions = ['colon_fence']
|
|
|
|
# Intersphinx mapping
|
|
intersphinx_mapping = {
|
|
'python': ('https://docs.python.org/3', None),
|
|
'pydantic': ('https://docs.pydantic.dev/latest/', None),
|
|
}
|
|
|
|
# we build some docstrings from loguru. define some no-op substitutions
|
|
# to avoid errors
|
|
rst_prolog = """
|
|
.. |Logger| replace:: Logger
|
|
.. |add| replace:: add
|
|
.. |sys.stderr| replace:: sys.stderr
|
|
.. |str.format| replace:: str.format
|
|
"""
|
|
|
|
# -- Options for HTML output -------------------------------------------------
|
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
|
|
|
|
html_theme = 'sphinx_rtd_theme'
|
|
html_static_path = ['_static']
|
|
|
|
# RTD theme options
|
|
html_theme_options = {
|
|
'navigation_depth': 4,
|
|
'titles_only': False,
|
|
}
|