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.6.tar.gz (98.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.6-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sphinx_badges-0.1.6.tar.gz
  • Upload date:
  • Size: 98.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.6.tar.gz
Algorithm Hash digest
SHA256 1e66f84d6a24e10d6205e796c1eb1a8cf05d35c7412bd58cc43b3a1199cb8b7c
MD5 de497c8320f0c0871b3b4d19a889ff55
BLAKE2b-256 237f5e47edaa1b67e7206814e1259ee81c0f285678a4f8f13e4f2a45a76b8639

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sphinx_badges-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 21.1 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 534a67ddd088fee2d34fbcee1d460509d949d784ef269a6aa9130eb1df2b08d8
MD5 4f69c5338f79ba2aeda043d875412716
BLAKE2b-256 c051c87f2b3d4d1fb62abbfef7fdfda8c2d59f3c87396de9e6993d3059b14dbd

See more details on using hashes here.

Provenance

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