Control JupyterLab from Python Notebooks
Project description
ipylab
Control JupyterLab from Python notebooks.
The goal is to provide access to most of the JupyterLab environment from Python notebooks. For example:
- Adding widgets to the main area
DockPanel
, left, right or top area - Build more advanced interfaces leveraging
SplitPanel
,Toolbar
and other Lumino widgets - Launch arbitrary commands (new terminal, change theme, open file and so on)
- Open a workspace with a specific layout
- Listen to JupyterLab signals (notebook opened, console closed) and trigger Python callbacks
Try it online
Try it in your browser with Binder:
Examples
Add Jupyter Widgets to the JupyterLab interface
Execute Commands
Custom Python Commands and Command Palette
Build small applications
Installation
You can install using pip
:
pip install ipylab
Or with mamba
/ conda
:
mamba install -c conda-forge ipylab
Running the examples locally
To try out the examples locally, the recommended way is to create a new environment with the dependencies:
# create a new conda environment
conda create -n ipylab-examples -c conda-forge jupyterlab ipylab ipytree bqplot ipywidgets numpy
conda activate ipylab-examples
# start JupyterLab
jupyter lab
Under the hood
ipylab
can be seen as a proxy from Python to JupyterLab over Jupyter Widgets:
Development
# create a new conda environment
mamba create -n ipylab -c conda-forge jupyter-packaging nodejs python -y
# activate the environment
conda activate ipylab
# install the Python package
python -m pip install -e ".[dev]"
# link the extension files
jupyter labextension develop . --overwrite
# compile the extension
jlpm && jlpm run build
Related projects
There are a couple of projects that also enable interacting with the JupyterLab environment from Python notebooks:
- wxyz: experimental widgets (including
DockPanel
) - jupyterlab-sidecar: add widgets to the JupyterLab right area
- jupyterlab_commands: add arbitrary Python commands to the jupyterlab command palette
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ipylab-0.4.0.tar.gz
(1.2 MB
view hashes)
Built Distribution
ipylab-0.4.0-py2.py3-none-any.whl
(169.7 kB
view hashes)
Close
Hashes for ipylab-0.4.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d6a3591e516ba57a0b9bbb2eb25015ff15b1f44496917f5cd4c46a0a50fe974 |
|
MD5 | 88c19d38cb08dd68622293fa9907a472 |
|
BLAKE2b-256 | 918cdeb1bf0f15c0822b74d1300b2aeddee0e8d9c1315c9f2559f6f82551ea62 |