An extensible environment for interactive and reproducible computing, based on the
Jupyter Notebook and Architecture.
JupyterLab is the next-generation user interface for Project Jupyter offering
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 interface.
JupyterLab can be extended using npm packages
that use our public APIs. The prebuilt extensions can be distributed
via PyPI,
conda, and other package managers. The source extensions can be installed
directly from npm (search for jupyterlab-extension) but require an additional build step.
You can also find JupyterLab extensions exploring GitHub topic jupyterlab-extension.
To learn more about extensions, see the user documentation.
Read the current JupyterLab documentation on ReadTheDocs.
[!IMPORTANT]
JupyterLab 3 reached its end of maintenance date on May 15, 2024. Fixes for critical issues will still be backported until December 31, 2024. If you are still running JupyterLab 3, we strongly encourage you to upgrade to JupyterLab 4 as soon as possible. For more information, see JupyterLab 3 end of maintenance on the Jupyter Blog.
Getting started
Installation
If you use conda, mamba, or pip, you can install JupyterLab with one of the following commands.
If you use conda:
conda install -c conda-forge jupyterlab
If you use mamba:
mamba install -c conda-forge jupyterlab
If you use pip:
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 jupyter lab. If you are using a Unix derivative (e.g., FreeBSD, GNU/Linux, macOS), you can do this by running export PATH="$HOME/.local/bin:$PATH".
Installing with Previous Versions of Jupyter Notebook
When using a version of Jupyter Notebook earlier than 5.3, the following command must be run after installing JupyterLab to enable the JupyterLab server extension:
JupyterLab will open automatically in the browser. See the documentation for additional details.
If you encounter an error like “Command ‘jupyter’ not found”, please make sure PATH environment variable is set correctly. Alternatively, you can start up JupyterLab using ~/.local/bin/jupyter lab without changing the PATH environment variable.
Prerequisites and Supported Browsers
The latest versions of the following browsers are currently known to work:
We encourage you to ask questions on the Discourse forum. A question answered there can become a useful resource for others.
Bug report
To report a bug please read the guidelines and then open a Github issue. To keep resolved issues self-contained, the lock bot will lock closed issues as resolved after a period of inactivity. If a related discussion is still needed after an issue is locked, please open a new issue and reference the old issue.
Feature request
We also welcome suggestions for new features as they help make the project more useful for everyone. To request a feature please use the feature request template.
JupyterLab uses 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.
Team
JupyterLab is part of Project Jupyter and is developed by an open community. The maintenance team is assisted 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:
Mehmet Bektas, Netflix (general development, extensions).
Alex Bozarth, IBM (general development, extensions).
Eric Charles, Datalayer, (general development, extensions).
This list is provided to give the reader context on who we are and how our team functions.
To be listed, please submit a pull request with your information.
Weekly Dev Meeting
We have videoconference meetings every week where we discuss what we have been working on and get feedback from one another.
Anyone is welcome to attend, if they would like to discuss a topic or just listen in.
Installation | Documentation | Contributing | License | Team | Getting help |
JupyterLab
An extensible environment for interactive and reproducible computing, based on the Jupyter Notebook and Architecture.
JupyterLab is the next-generation user interface for Project Jupyter offering 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 interface.
JupyterLab can be extended using npm packages that use our public APIs. The prebuilt extensions can be distributed via PyPI, conda, and other package managers. The source extensions can be installed directly from npm (search for jupyterlab-extension) but require an additional build step. You can also find JupyterLab extensions exploring GitHub topic jupyterlab-extension. To learn more about extensions, see the user documentation.
Read the current JupyterLab documentation on ReadTheDocs.
Getting started
Installation
If you use conda, mamba, or pip, you can install JupyterLab with one of the following commands.
pip install --user, you must add the user-levelbindirectory to yourPATHenvironment variable in order to launchjupyter lab. If you are using a Unix derivative (e.g., FreeBSD, GNU/Linux, macOS), you can do this by runningexport PATH="$HOME/.local/bin:$PATH".For more detailed instructions, consult the installation guide. Project installation instructions from the git sources are available in the contributor documentation.
Installing with Previous Versions of Jupyter Notebook
When using a version of Jupyter Notebook earlier than 5.3, the following command must be run after installing JupyterLab to enable the JupyterLab server extension:
Running
Start up JupyterLab using:
JupyterLab will open automatically in the browser. See the documentation for additional details.
If you encounter an error like “Command ‘jupyter’ not found”, please make sure
PATHenvironment variable is set correctly. Alternatively, you can start up JupyterLab using~/.local/bin/jupyter labwithout changing thePATHenvironment variable.Prerequisites and Supported Browsers
The latest versions of the following browsers are currently known to work:
See our documentation for additional details.
Getting help
We encourage you to ask questions on the Discourse forum. A question answered there can become a useful resource for others.
Bug report
To report a bug please read the guidelines and then open a Github issue. To keep resolved issues self-contained, the lock bot will lock closed issues as resolved after a period of inactivity. If a related discussion is still needed after an issue is locked, please open a new issue and reference the old issue.
Feature request
We also welcome suggestions for new features as they help make the project more useful for everyone. To request a feature please use the feature request template.
Development
Extending JupyterLab
To start developing an extension for JupyterLab, see the developer documentation and the API docs.
Contributing
To contribute code or documentation to JupyterLab itself, please read the contributor documentation.
JupyterLab follows the Jupyter Community Guides.
License
JupyterLab uses 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.
Team
JupyterLab is part of Project Jupyter and is developed by an open community. The maintenance team is assisted 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:
Maintainer emeritus:
This list is provided to give the reader context on who we are and how our team functions. To be listed, please submit a pull request with your information.
Weekly Dev Meeting
We have videoconference meetings every week where we discuss what we have been working on and get feedback from one another.
Anyone is welcome to attend, if they would like to discuss a topic or just listen in.
jovyanZoom