Skip to main content

Bootstrap-style status badges for Sphinx documentation

Project description

sphinx-badges

Bootstrap-style status badges for Sphinx documentation.

Attach coloured badges to any API element, filter a toctree or autosummary table by badge group with a single click, and add per-group icons and tooltips to make status immediately scannable.

PyPI version Ruff Ruff Format

Documentation

Installation

pip install sphinx-badges

Or with uv:

uv add sphinx-badges

Quick start

  1. Add the extension to conf.py:

    extensions = ["sphinx_badges"]
    
  2. Define grouped badges in conf.py:

    badges_group_labels = {
        "stability": {
            "label": "Stability",
            "tooltip": "API stability level",
            "icon": "⚡",        # prepended to every badge in this group
        },
        "area": {
            "label": "Area",
            "tooltip": "Functional area",
        },
    }
    
    badges_definitions = {
        "stability:stable":       {"label": "Stable",       "color": "#198754", "text_color": "#fff"},
        "stability:experimental": {"label": "Experimental", "color": "#ffc107", "text_color": "#000"},
        "area:core":              {"label": "Core",         "color": "#6f42c1", "text_color": "#fff"},
        "area:utils":             {"label": "Utils",        "color": "#fd7e14", "text_color": "#fff"},
    }
    

    Badge IDs use a group:name format. badges_group_labels maps group keys to display labels shown above each row of filter buttons. Each group can also carry an icon (prepended to every badge in the group) and a tooltip (shown on hover). Per-badge icon and tooltip can be set directly in badges_definitions to override the group-level values.

    Ungrouped IDs (no colon) are also supported for simpler setups.

  3. Attach badges to a page:

    my_function
    ===========
    
    .. badges:: stability:stable area:core
    
    Description here.  Also inline: :badge:`stability:stable`.
    
  4. Filter a toctree by badge group:

    .. badge-filter:: stability:stable stability:experimental area:core area:utils
       :filter-mode: or
    
       .. toctree::
    
          api/module_a
          api/module_b
    

    Each group renders as its own labelled row of filter buttons. filter-mode can be or (any active badge matches) or and (all active badges must match; default).

  5. Add badges via numpy-style docstrings (autodoc):

    def my_function(x, y):
        """Return the sum.
    
        Badges
        ------
        stability:stable area:core
        """
    

Licence

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sphinx_badges-0.1.5.tar.gz (96.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sphinx_badges-0.1.5-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file sphinx_badges-0.1.5.tar.gz.

File metadata

  • Download URL: sphinx_badges-0.1.5.tar.gz
  • Upload date:
  • Size: 96.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sphinx_badges-0.1.5.tar.gz
Algorithm Hash digest
SHA256 563c2ea0fd67751e21b2f8dcfc3ca45f2a6385364c0336b81e6f40e2f6c568d9
MD5 8b416a7d018e6d49ae78eb479d5b5374
BLAKE2b-256 9508eeb19cad55332074750e040b895399ae257f7864772214a8116058f9ccc8

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_badges-0.1.5.tar.gz:

Publisher: publish.yml on NickGeneva/sphinx-badges

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sphinx_badges-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: sphinx_badges-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 19.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sphinx_badges-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3da2e768f2cee1c203e12cc657932a1a659a516219c7bcb0344d4e45564801e2
MD5 2838f60a4b5293489c1686faf54432c0
BLAKE2b-256 1da18063c6cee4105f7796eaeecbd17fba7de90fd93e78b7485a005ee5587f8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_badges-0.1.5-py3-none-any.whl:

Publisher: publish.yml on NickGeneva/sphinx-badges

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page