sphinx-favicon
Sphinx Extension adding support for custom favicons
What it is and what it does
Sphinx Favicon is a Sphinx extension that simplifies adding multiple favicon formats to HTML documentation. Instead of relying on Sphinx's built-in single-favicon support, it lets you define a list of favicon configurations directly in conf.py, each with a custom href and rel attribute (icon, apple-touch-icon, etc.). The extension generates the appropriate link tags in the HTML head during the build.
It handles both local files (resolved relative to html_static_path) and remote URLs. The extension depends on sphinx for the build framework, imagesize for reading image dimensions, and requests for fetching remote resources. It requires Python 3.10 or later and is classified as Production/Stable, though development has slowed (last release 183 days ago).
Use it for:
- Add multiple favicon sizes for different browsers and devices in a single configuration block
- Serve favicons from a remote URL while keeping documentation source in version control
- Configure apple-touch-icon links for iOS home-screen shortcuts without manual HTML editing
- Migrate from Sphinx's single favicon.ico to a multi-format favicon strategy
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Sphinx extension that injects custom favicon link tags into HTML documentation, supporting multiple formats and rel attributes configured directly in conf.py.
Yes, if you maintain Sphinx documentation and need multi-format favicon support beyond Sphinx's built-in single-favicon option. The extension is stable, permissively licensed, and has low install friction. However, maintenance is aging (last release 183 days ago), so verify compatibility with your current Sphinx version before relying on it for production builds.
Install
sphinx-favicon on PyPI
pip
pip install sphinx-faviconuv
uv add sphinx-faviconpoetry
poetry add sphinx-faviconInstalling sphinx-favicon
Before you install
Low friction: pure Python wheel with three lightweight runtime dependencies. Maintenance status is aging—last release 183 days ago, repository not archived but with modest activity (24 stars).
License in practice
MIT license (permissive): you can use, modify, and redistribute this extension freely in commercial or private projects with minimal restrictions.
Quickstart
pip install sphinx-favicon
# In conf.py:
extensions = ["sphinx_favicon"]
html_static_path = ["_static"]
favicons = [
{"href": "icon.svg"},
{"rel": "apple-touch-icon", "href": "https://example.com/apple-touch-icon.png"}
]
Requires Python 3.10 or later; html_static_path must be set if using relative favicon paths
Verify before relying
- Whether imagesize and requests are actually invoked at build time or only conditionally
- Performance impact when processing many favicons or remote URLs during builds
- Compatibility with Sphinx versions beyond those tested in the fact sheet
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — sphinx, imagesize, requests |
| Maintenance | aging — 183 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 201,373/month — #9,673 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: sphinx_favicon-1.1.0-py3-none-any.whl
Keywords: sphinx, extension, favicon, meta html
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
faviconFetches and parses a website's favicon from its…
permissive · top 15,000 on PyPI
sphinxemojiSphinx extension that replaces emoji codes…
permissive · top 15,000 on PyPI
sphinx-reredirectsSphinx extension that generates HTML redirect…
unclear · top 5,000 on PyPI
sphinx-jinjaA Sphinx extension that lets you embed Jinja2…
permissive · top 5,000 on PyPI
sphinxcontrib-googleanalyticsAdds Google Analytics tracking to…
permissive · top 15,000 on PyPI
sphinx-hoverxrefSphinx extension that displays tooltips with…
permissive · top 15,000 on PyPI
sphinx-substitution-extensionsAdds substitution support to Sphinx directives,…
permissive · top 15,000 on PyPI
sphinx-notfound-pageA Sphinx extension that generates a custom 404…
permissive · top 5,000 on PyPI
sphinxext-opengraphSphinx extension that automatically generates…
permissive · top 15,000 on PyPI
sphinx-gallerySphinx-Gallery is a Sphinx extension that…
permissive · top 15,000 on PyPI