sphinx-filter-tabs


Namesphinx-filter-tabs JSON
Version 1.2.5 PyPI version JSON
download
home_pageNone
SummaryA Sphinx extension for accessible, CSS-first filterable content tabs.
upload_time2025-09-04 04:10:13
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseGNU General Public License v3.0
keywords sphinx extension tabs filter documentation css-only accessibility keyboard-navigation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Sphinx Filter Tabs Extension

[![Tests and Docs Deployment](https://github.com/aputtu/sphinx-filter-tabs/actions/workflows/test.yml/badge.svg)](https://github.com/aputtu/sphinx-filter-tabs/actions/workflows/test.yml)
[![PyPI version](https://img.shields.io/pypi/v/sphinx-filter-tabs.svg)](https://pypi.org/project/sphinx-filter-tabs/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/sphinx-filter-tabs.svg)](https://pypi.org/project/sphinx-filter-tabs/)
[![PyPI - License](https://img.shields.io/pypi/l/sphinx-filter-tabs.svg)](https://github.com/aputtu/sphinx-filter-tabs/blob/main/LICENSE)

A robust Sphinx extension for creating accessible, JavaScript-free, filterable content tabs.

**📖 View extension and documentation at: https://aputtu.github.io/sphinx-filter-tabs/**

This extension provides `filter-tabs` and `tab` directives to create user-friendly, switchable content blocks, ideal for showing code examples in multiple languages or instructions for different platforms.

## Features

- **No JavaScript:** Pure CSS implementation ensures maximum compatibility, speed, and accessibility.
- **WAI-ARIA Compliant:** The generated HTML follows accessibility best practices for keyboard navigation and screen readers.
- **Highly Customizable:** Easily theme colors, fonts, and sizes directly from your `conf.py` using CSS Custom Properties.
- **Graceful Fallback:** Renders content as simple admonitions in non-HTML outputs like PDF/LaTeX.
- **Automated Testing:** CI/CD pipeline tests against multiple Sphinx versions to ensure compatibility.

## Installation

You can install this extension using `pip`:
```bash
pip install sphinx-filter-tabs
```

## Development

1. You can install a local version of the Sphinx with extension using:
```bash
./scripts/setup_dev.sh # Initially cleans previous folders in _docs/build  and venv.
```

Command to enter venv is provided.

2. Once inside virtual environment, you can use following commands:
```bash
pytest # Runs test suite on configured version of Sphinx.
tox # Check across multiple Sphinx versions. Manual install of tox required.
./scripts/export-project.sh # Outputs directory structure and code to txt
./dev.sh [options] # Allows for faster generation for html, pdf, clean up
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "sphinx-filter-tabs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "sphinx, extension, tabs, filter, documentation, css-only, accessibility, keyboard-navigation",
    "author": null,
    "author_email": "Aputsiak Niels Janussen <aputtu+sphinx@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/48/93/2d9b02824ac56ef3f7e2df91759675b68bc24ee630a73618a1b89c7fa62c/sphinx_filter_tabs-1.2.5.tar.gz",
    "platform": null,
    "description": "# Sphinx Filter Tabs Extension\n\n[![Tests and Docs Deployment](https://github.com/aputtu/sphinx-filter-tabs/actions/workflows/test.yml/badge.svg)](https://github.com/aputtu/sphinx-filter-tabs/actions/workflows/test.yml)\n[![PyPI version](https://img.shields.io/pypi/v/sphinx-filter-tabs.svg)](https://pypi.org/project/sphinx-filter-tabs/)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/sphinx-filter-tabs.svg)](https://pypi.org/project/sphinx-filter-tabs/)\n[![PyPI - License](https://img.shields.io/pypi/l/sphinx-filter-tabs.svg)](https://github.com/aputtu/sphinx-filter-tabs/blob/main/LICENSE)\n\nA robust Sphinx extension for creating accessible, JavaScript-free, filterable content tabs.\n\n**\ud83d\udcd6 View extension and documentation at: https://aputtu.github.io/sphinx-filter-tabs/**\n\nThis extension provides `filter-tabs` and `tab` directives to create user-friendly, switchable content blocks, ideal for showing code examples in multiple languages or instructions for different platforms.\n\n## Features\n\n- **No JavaScript:** Pure CSS implementation ensures maximum compatibility, speed, and accessibility.\n- **WAI-ARIA Compliant:** The generated HTML follows accessibility best practices for keyboard navigation and screen readers.\n- **Highly Customizable:** Easily theme colors, fonts, and sizes directly from your `conf.py` using CSS Custom Properties.\n- **Graceful Fallback:** Renders content as simple admonitions in non-HTML outputs like PDF/LaTeX.\n- **Automated Testing:** CI/CD pipeline tests against multiple Sphinx versions to ensure compatibility.\n\n## Installation\n\nYou can install this extension using `pip`:\n```bash\npip install sphinx-filter-tabs\n```\n\n## Development\n\n1. You can install a local version of the Sphinx with extension using:\n```bash\n./scripts/setup_dev.sh # Initially cleans previous folders in _docs/build  and venv.\n```\n\nCommand to enter venv is provided.\n\n2. Once inside virtual environment, you can use following commands:\n```bash\npytest # Runs test suite on configured version of Sphinx.\ntox # Check across multiple Sphinx versions. Manual install of tox required.\n./scripts/export-project.sh # Outputs directory structure and code to txt\n./dev.sh [options] # Allows for faster generation for html, pdf, clean up\n```\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v3.0",
    "summary": "A Sphinx extension for accessible, CSS-first filterable content tabs.",
    "version": "1.2.5",
    "project_urls": {
        "Homepage": "https://github.com/aputtu/sphinx-filter-tabs",
        "Issues": "https://github.com/aputtu/sphinx-filter-tabs/issues",
        "Repository": "https://github.com/aputtu/sphinx-filter-tabs.git"
    },
    "split_keywords": [
        "sphinx",
        " extension",
        " tabs",
        " filter",
        " documentation",
        " css-only",
        " accessibility",
        " keyboard-navigation"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "16bbd48fcb2a2fcaf1445729758cdc1b756a029171eb9ca6dd81501ace8228d4",
                "md5": "1fe56968cd57d8ffb1a2f73ceebf12d4",
                "sha256": "eb88367100eb4d407a4d61a35568b448e32073fae5e6174d3c8b9039512af556"
            },
            "downloads": -1,
            "filename": "sphinx_filter_tabs-1.2.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1fe56968cd57d8ffb1a2f73ceebf12d4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 26985,
            "upload_time": "2025-09-04T04:10:11",
            "upload_time_iso_8601": "2025-09-04T04:10:11.483549Z",
            "url": "https://files.pythonhosted.org/packages/16/bb/d48fcb2a2fcaf1445729758cdc1b756a029171eb9ca6dd81501ace8228d4/sphinx_filter_tabs-1.2.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "48932d9b02824ac56ef3f7e2df91759675b68bc24ee630a73618a1b89c7fa62c",
                "md5": "04a0d9331b57cc46bad6335967e63c3b",
                "sha256": "6fe70bae16f220024716cc73b7539dbd5d1c2a1ad7ad5d664d5c4456c01ce9fb"
            },
            "downloads": -1,
            "filename": "sphinx_filter_tabs-1.2.5.tar.gz",
            "has_sig": false,
            "md5_digest": "04a0d9331b57cc46bad6335967e63c3b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 29453,
            "upload_time": "2025-09-04T04:10:13",
            "upload_time_iso_8601": "2025-09-04T04:10:13.753119Z",
            "url": "https://files.pythonhosted.org/packages/48/93/2d9b02824ac56ef3f7e2df91759675b68bc24ee630a73618a1b89c7fa62c/sphinx_filter_tabs-1.2.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-04 04:10:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "aputtu",
    "github_project": "sphinx-filter-tabs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "sphinx-filter-tabs"
}
        
Elapsed time: 0.45585s