This project is archived. It is now possible to create a Theme Extension for JupyterLab using the following cookiecutter: https://github.com/jupyterlab/extension-cookiecutter-ts.
A cookiecutter template to help you make new JupyterLab theme extensions.
Install cookiecutter:
pip install cookiecutter
Use cookiecutter to generate a package:
cookiecutter https://github.com/jupyterlab/theme-cookiecutter
The cookiecutter will prompt you with the following questions and generate a project according to your responses:
author_name
: Your full name.python_name
: The name of the Python package for your JupyterLab extension (e.g.jupyterlab_pink_theme
).labextension_name
: Your JupyterLab extension name (e.g.@my-organization/jupyterlab-pink-theme
).project_short_description
: A short description of your JupyterLab theme extension.has_binder
: Whether you extension has a binder link or not.repository
: Your theme's repository. If the code of your theme is hosted on Github, this should just be the main Github url (e.g.https://github.com/my-organization/jupyterlab_pink_theme
).
Once you fill in the cookiecutter prompts, you'll get a basic theme extension. The files within are structured as follows:
python_name
style
: The assets (.css
files, images, etc) that will make up your theme's actual style. This start out with the style from the default Jupyterlab light theme.src
- The extension source.index.ts
: Entry point for the JupyterLab extension
package.json
: Metadata files that defines the files in your extension and their dependenciestsconfig.json
: Tells the TypeScript compiler how to build your extensionsetup.py
: The Python distribution file
We suggest that extension names start with jupyterlab_
and use underscores or dashes if needed to improve readability, such as jupyterlab_myextension
.