An extensible environment for interactive and reproducible computing, based on the Jupyter Notebook and Architecture. Currently in beta.
JupyterLab is the next-generation user interface for Project Jupyter. It offers all the familiar building blocks of the classic Jupyter Notebook (notebook, terminal, text editor, file browser, rich outputs, etc.) in a flexible and powerful user inteface. Eventually, JupyterLab will replace the classic Jupyter Notebook after JupyterLab reaches 1.0.
JupyterLab can be extended using extensions that are npm packages and use our public APIs. You can search for the GitHub topic jupyterlab-extension to find extensions. To learn more about extensions, see our user documentation.
The beta releases are suitable for general usage. For JupyterLab extension developers, the extension APIs will continue to evolve until the 1.0 release.
Read the latest version of our documentation on ReadTheDocs.
You can install JupyterLab using
Instructions on how to install the project from the git sources are available in our contributor documentation.
If you use
conda, you can install as:
conda install -c conda-forge jupyterlab
If you use
pip, you can install it as:
pip install jupyterlab
If installing using
pip install --user, you must add the user-level
bin directory to your
PATH environment variable in order to launch
If you use
pipenv, you can install it as:
pipenv install jupyterlab pipenv shell
or from a git checkout:
pipenv install git+git://github.com/jupyterlab/jupyterlab.git#egg=jupyterlab pipenv shell
pipenv, in order to launch
jupyter lab, you must activate the project's virtualenv. For example, in the directory where
Pipfile.lock live (i.e., where you ran the above commands):
pipenv shell jupyter lab
Installing with Previous Versions of Jupyter Notebook
If you are using a version of Jupyter Notebook earlier than 5.3, then you must also run the following command after installation to enable the JupyterLab server extension:
jupyter serverextension enable --py jupyterlab --sys-prefix
Start up JupyterLab using:
JupyterLab will open automatically in your browser. See our documentation for additional details.
Prerequisites and Supported Browsers
Jupyter notebook version 4.3 or later. To check the notebook version:
jupyter notebook --version
The latest versions of the following browsers are currently known to work:
See our documentation for additional details.
If you would like to contribute to the project, please read our contributor documentation.
JupyterLab follows the official Jupyter Code of Conduct.
We use a shared copyright model that enables all contributors to maintain the copyright on their contributions. All code is licensed under the terms of the revised BSD license.
JupyterLab is part of Project Jupyter and is developed by an open community of contributors. Our maintainer team is accompanied by a much larger group of contributors to JupyterLab and Project Jupyter as a whole.
JupyterLab's current maintainers are listed in alphabetical order, with affiliation, and main areas of contribution:
- Chris Colbert, Project Jupyter (co-creator, application/low-level architecture, technical leadership, vision, PhosphorJS)
- Afshin Darian, Two Sigma (co-creator, application/high-level architecture, prolific contributions throughout the code base).
- Jessica Forde, Project Jupyter (demo, documentation)
- Tim George, Cal Poly (UI/UX design, strategy, management, user needs analysis)
- Brian Granger, Cal Poly (co-creator, strategy, vision, management, UI/UX design, architecture).
- Jason Grout, Bloomberg (co-creator, vision, general development).
- Fernando Perez, UC Berkeley (co-creator, vision).
- Ian Rose, UC Berkeley (Real-time collaboration, document architecture).
- Saul Shanabrook, Quansight (general development, extensions)
- Steven Silvester, JPMorgan Chase (co-creator, release management, packaging, prolific contributions throughout the code base).
- Cameron Oelsen, Cal Poly (UI/UX design).
This list is provided to help provide context about who we are and how our team functions. If you would like to be listed, please submit a pull request with your information.
We encourage you to ask questions on the mailing list, and you may participate in development discussions or get live help on Gitter. Please use our issues page to provide feedback or submit a bug report.