Thanks for your interest in contributing to
sphinx-thebe, your contributions are welcome and appreciated 🎉. This page contains some information to help you get started.
sphinx-thebe is designed to be a simple bridge between Sphinx and
It should not add a lot of extra functionality on top of Thebe, beyond special-casing its configuration for Sphinx objects and its build system.
It’s primary goal is to make it pain-free to load
thebe.js and apply it to websites generated by Sphinx with reasonable default choices.
sphinx-thebe adds default configuration to support major Jupyter Notebook extensions in the Sphinx ecosystem.
Currently this means MyST-NB, but in the future we’d also like to support nbsphinx by default.
See the ExecutableBooks developer guidelines for conventions and practices around developing
thebe under the hood.
The sphinx package is contained in
__init__.pyfile contains the code that activates and loads the proper CSS and JS when Sphinx is run.
sphinx_thebe/_static. These handle the activation of
thebeon a page via a button-click, and also make minor modification to the page’s DOM to make it work well with
Python code follows
pep8 as described in the EBP contributing guide.
Installation for development#
sphinx-thebe for development clone and install
git clone https://github.com/executablebooks/sphinx-thebe cd sphinx-thebe pip install -e .[sphinx,testing]
When you build Sphinx documentation with
sphinx-thebe activated, it should now use the local development version. You can try this by building the
cd docs make html