ipylab
    TypeScript icon, indicating that this package has built-in type declarations

    0.5.2 • Public • Published

    ipylab

    Github Actions Status Binder Conda Version pypi npm

    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:

    Binder

    Examples

    Add Jupyter Widgets to the JupyterLab interface

    widgets-panels

    Execute Commands

    command-registry

    Custom Python Commands and Command Palette

    custom-commands

    Build small applications

    ipytree-example

    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:

    ipylab-diagram

    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:

    Install

    npm i ipylab

    DownloadsWeekly Downloads

    24

    Version

    0.5.2

    License

    BSD-3-Clause

    Unpacked Size

    40.1 kB

    Total Files

    18

    Last publish

    Collaborators

    • jtpio