Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Nextstrain Sphinx Theme

A Sphinx theme for Nextstrain's documentation, based on Read The Docs' default theme (sphinx_rtd_theme).


This theme is distributed on PyPI as nextstrain-sphinx-theme and can be installed with pip:

$ python3 -m pip install nextstrain-sphinx-theme

To use the theme in your Sphinx project, you will need to add the following to your file:

html_theme = "nextstrain-sphinx-theme"

This theme is based on sphinx_rtd_theme and accepts most of the same configuration options settable via html_theme_option and a few additional options as well:

logo:Boolean determining if the Nextstrain logo should be displayed. Defaults to true.
logo_link:URL to use for the logo's link. Defaults to <>.
logo_only:Ignored. Inherited from sphinx_rtd_theme. Instead, the project name and version info will not be displayed (thus showing only the logo) when subproject is true.
subproject:Boolean determining if this is a subproject of the main Nextstrain documentation project on <>. Defaults to true.

If your project wants to display its own logo, just set Sphinx's html_logo to point to the image file in your Sphinx project.

html_logo = "_static/your-logo.png"

This will automatically take precedence over the default Nextstrain logo provided by the theme.


python3 -m pip install -e .
make clean # not always needed, but better to be cautious
make html
open build/html/index.html


  1. Make sure all your changes have been commited to the main branch.
  2. Add a commit which describes the changes from the previous version to CHANGES.rst and updates the version number in lib/nextstrain/sphinx/theme/VERSION.
  3. Tag this commit with the version number, e.g. git tag -a 2020.4 -m "version 2020.4".
  4. Push the commit and tag to GitHub, e.g. git push origin main 2020.4.
  5. Publish to PyPI by invoking a GitHub Actions workflow:
    1. Go to the workflow: publish.yml.
    2. Select Run workflow. In the new menu:
      1. Select Use workflow from > Tags > new version number (e.g. 2020.4).
      2. Set PyPI instance for publishing as PyPI (default) or TestPyPI. More info
      3. Select Run workflow.


PR test builds are available here: and usually follow the following URL path convention: where 17 is the PR number


A Sphinx theme for Nextstrain's documentation, based on Read The Docs' default theme.



Code of conduct





No packages published