Skip to main content

Matplotlib theme for Sphinx

Project description

This is the official Sphinx theme for Matplotlib documentation. It extends the pydata-sphinx-theme project, but adds custom styling and a navigation bar.

A demo of the theme built with the main branch can be seen at https://matplotlib.org/mpl-sphinx-theme/.

When creating a Matplotlib subproject you can include this theme by changing this line in your conf.py file

html_theme = 'mpl_sphinx_theme'

And by including mpl_sphinx_theme as a requirement in your documentation installation.

See the docs/conf.py file for other settings.

There are two main templates that replace the defaults in pydata-sphinx-theme:

navbar_center = mpl_nav_bar.html
navbar_end = mpl_icon_links.html

Note that the logo options need not be specified as they are included in theme initialization. The logo is stored at mpl_sphinx_theme/static/logo_{light,dark}.svg.

To change the top navbar, edit mpl_sphinx_theme/mpl_nav_bar.html

To change the social icons, edit mpl_sphinx_theme/mpl_icon_links.html

To change the style, edit mpl_sphinx_theme/static/css/style.css

Building

To build the theme with a sample page, navigate into the doc/ directory and run

make html

The built html pages can be found in doc/_build/html/

Releasing

Manually for now… see the todo below for how we hope to eventually do it automagically.

  • be sure to edit mpl_sphinx_theme/_version.py

$ git checkout <commit-hash>
$ git tag -a x.y.z -m 'Version x.y.z'
$ git push upstream main --tags
$ python -m build -s -w
$ twine upload dist/mpl_sphinx_theme-x.y.z*

Update the required mpl-sphinx-theme version in the following files:

  • matplotlib/matplotlib: requirements/doc/doc-requirements.txt

  • matplotlib/mpl-brochure-site: requirements.txt

  • matplotlib/mpl-third-party: docs/requirements.txt

  • matplotlib/governance: requirements-doc.txt

  • matplotlib/mpl-gui: requirements-doc.txt

TODO: This project uses GitHub Actions to automatically push a new release to PyPI whenever a git tag is pushed. For example, to release a new x.y.z version of mpl-sphinx-theme, checkout the commit you would like to release, add a git tag, and push the tag to the main branch of the matplotlib/mpl-sphinx-theme repository:

TODO: After a new release is published on PyPI, a pull request to the mpl-sphinx-theme conda-forge feedstock for the new x.y.z release will automatically be opened by conda-forge bots.

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

mpl_sphinx_theme-3.8.0rc1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

mpl_sphinx_theme-3.8.0rc1-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file mpl_sphinx_theme-3.8.0rc1.tar.gz.

File metadata

  • Download URL: mpl_sphinx_theme-3.8.0rc1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for mpl_sphinx_theme-3.8.0rc1.tar.gz
Algorithm Hash digest
SHA256 b5d630a9dfe94fb16b143ae5a160b7c2a2c3f01e530810df9b9e8bd56cc73053
MD5 cd3a7490e527644630c2d6ed6531ae0f
BLAKE2b-256 c38511bc2be9300eca0d9b01a2ebd4ff1d9b7a06499024382f3a93ea118445eb

See more details on using hashes here.

Provenance

File details

Details for the file mpl_sphinx_theme-3.8.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for mpl_sphinx_theme-3.8.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b625cbd059e95ef0222a41edef5b3d8bf6038234f764419030a70dcc7c435fb
MD5 d60381412590bd62f572f6b318c074cd
BLAKE2b-256 9211f320cdbec7f67fd9845d76e9096c7e8f6a11d7795fc0867049ff28d8b13d

See more details on using hashes here.

Provenance

Supported by

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