Skip to main content

JupyterLab Toolbar Theme Toggler

Project description

jupyterlab-theme-toggle

JupyterLab extension to toggle the theme in the Top Bar area.

screencast

This extension was originally developed as part of the jupyterlab-topbar project, extracted into its own repository later on and brought back into jupyterlab-topbar project.

Prerequisites

  • JupyterLab 1.0+

Installation

JupyterLab 4.x

Starting from JupyterLab 4.0, extension can be distributed as a Python package. Use version 1.0.0 as other versions are incompatible with JupyterLab 4

pip install jupyterlab-theme-toggler==1.0.0

JupyterLab 2.x and 3.x

This extension requires the jupyterlab-topbar-extension extension for JupyterLab to display the visual switch:

jupyter labextension install jupyterlab-topbar-extension jupyterlab-theme-toggle

To only install the keyboard shortcut (Cmd/Ctrl+y by default):

jupyter labextension install jupyterlab-theme-toggle

Development

JupyterLab 4.x

Note: You will need NodeJS to build the extension package.

The jlpm command is JupyterLab's pinned version of yarn that is installed with JupyterLab. You may use yarn or npm in lieu of jlpm below.

# Clone the repo to your local environment
# Change directory to the jupyterlab-logout directory
# Install package in development mode
pip install -e .
# Link your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite
# Rebuild extension Typescript source after making changes
jlpm run build

You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension.

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm run watch
# Run JupyterLab in another terminal
jupyter lab

With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt).

By default, the jlpm run build command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command:

jupyter lab build --minimize=False

JupyterLab 3.x

# create a new conda environment
conda create -n jupyterlab-theme-toggle jupyterlab nodejs
conda activate jupyterlab-theme-toggle

# required to place indicators in the top area
jupyter labextension install jupyterlab-topbar-extension

# install dependencies
jlpm

# local install of the extension
jupyter labextension install .

To rebuild the package and the JupyterLab app:

jlpm run build
jupyter lab build

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

jupyterlab_theme_toggler-1.1.0.tar.gz (681.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyterlab_theme_toggler-1.1.0-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_theme_toggler-1.1.0.tar.gz.

File metadata

  • Download URL: jupyterlab_theme_toggler-1.1.0.tar.gz
  • Upload date:
  • Size: 681.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for jupyterlab_theme_toggler-1.1.0.tar.gz
Algorithm Hash digest
SHA256 9468d1fd7b0c7789b17fd6dc3f684695eacd37c23c2f743e1e744fe2cc535afb
MD5 2257619e44b9b97a970cfc2beded1f74
BLAKE2b-256 090f88463afe1544d43681a69043bc6b8777105caac49bb88f2f1037ea08acf7

See more details on using hashes here.

File details

Details for the file jupyterlab_theme_toggler-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_theme_toggler-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f925bb19dcdfdfa378759b4eb1cd44022f57b1707eeaa0d38530dea6712c07e2
MD5 7ab56a65a44ecc65ef4ef40c1f890005
BLAKE2b-256 0d4b40119ec9f3e5a4a9351d49a5de829b3c61d4f588f78df167a0e5a9d326b8

See more details on using hashes here.

Supported by

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