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.2.tar.gz (91.3 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.2-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sphinx_badges-0.1.2.tar.gz
  • Upload date:
  • Size: 91.3 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.2.tar.gz
Algorithm Hash digest
SHA256 cf18d4884fad184882544a3eca04878682e9ad9a195d452e8ddb9e659c0eb31e
MD5 fe20d8808539df7bec1c56a0c885fb6d
BLAKE2b-256 055723f1ef0685a72bc466fcf0faff20ac91af23883781c88ce59f53eb76abe1

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_badges-0.1.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: sphinx_badges-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 17.3 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d1a6821e60263b7eec8e70feeecb61fb0c54e3e87452b1d70608f11bf014ecbf
MD5 a8796856a07c32a0758946c5c819fc71
BLAKE2b-256 51ca9cd3c4a9d510eace1c01b377950433fa806720e0acd0ec1f3ddf2a2b6c71

See more details on using hashes here.

Provenance

The following attestation bundles were made for sphinx_badges-0.1.2-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