The goal of this repository is to show how to develop extensions for JupyterLab, presented as short tutorial series.
To get started:
git clone https://github.com/jtpio/jupyterlab-extension-examples.git && cd jupyterlab-extension-examples && \ conda env create && \ conda activate jupyterlab-extension-examples && \ cd basics/hello-world && \ jlpm && \ jlpm run build && \ jupyter labextension link . # In another terminal jupyter lab --watch
You may find it easier to learn how to create extensions by examples, instead of going through the documentation.
Start with the Hello World and then jump to the topic you are interested in.
You can expect from each example:
We have structured the examples based on the extension points. Browse the previews below or skip them and jump directly to the sections for developers.
Writing an extension requires basic knowledge of JavaScript, Typescript and potentially Python.
Don't be scared of Typescript, even if you never coded in TypeScript before you touch JupyterLab you may find it easier to understand than pure JavaScript if you have a basic understanding of object oriented programming and types.
These examples are developed and tested on top of JupyterLab version 1.2. You can create a conda environment to get started.
conda env create && \ conda activate jupyterlab-extension-examplesDevelop and Use the Examples Build and link all examples at once
jlpm jlpm build-ext jlpm link-ext jlpm build-jlab jupyter lab
To clean the lib folders:
Build and link one exampleGo to the example directory you want to install, e.g. cd ./basics/hello-world
, and run the following commands:
jlpm install jlpm run build jupyter labextension link .
Rebuild the JupyterLab application:
jlpm run build jupyter lab build
Start JupyterLab in watch mode:
Install a Published ExtensionOnce your extension is published (outside of this scope), you can install it with the following command:
jupyter labextension install <published_extension>
JupyterLab can be used as a platform to combine existing data-science components into a new powerful application that can be deployed remotely to many users. Some of the higher level components that can be used are text editors, terminals, notebooks, interactive widgets, filebrowser, renderers for different file formats that provide access to an enormous ecosystem of libraries from different languages.
Complementary to these examples, you can rely on the official JupyterLab documentation.
We would like to thank MMesch for initiating this work, as well as everyone else who contributed!
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4