No Description

Eric Charles 3d3bf852cf Enable extension manager by default 5 years ago
.github 726208ad57 Cache pip per python version 5 years ago
binder 9ffd8a19a7 increase timeout for binder launch 5 years ago
buildutils 14f01b81c1 Merge pull request #8003 from jasongrout/patch 5 years ago
design 85352c737c The title has a typo 5 years ago
dev_mode 3591ea8130 Publish 2.0.1 5 years ago
docs 0627c3b276 Merge pull request #8034 from stefansimik/master 5 years ago
examples 5621c396fb New version 5 years ago
jupyter-config 256b3f77ea Add data_files support (#3546) 7 years ago
jupyterlab d857cf189f Fix python 3.5 compatibility issue in tests dealing with paths vs strings. 5 years ago
packages 3d3bf852cf Enable extension manager by default 5 years ago
release 22f04440b4 Add a Docker file for a clean release environment 5 years ago
scripts f5f4fc5623 Add initial attempt at a GitHub action test script 5 years ago
tests 5621c396fb New version 5 years ago
testutils 5621c396fb New version 5 years ago
typedoc-theme 5fee8c5389 Switch to ts 3.1 6 years ago
.bumpversion.cfg 621e371dc7 bump version 5 years ago
.cleanignore 2de04f2c37 implemented fallback arg for LabIcon.resolveX methods 5 years ago
.eslintignore c89aaac0d9 deprecated `justify` => `elementPosition` across codebase 5 years ago
.eslintrc 891107feb4 cleanup 5 years ago
.gitattributes 2a3bc70c04 Upgrade to yarn 1.5.1 7 years ago
.gitignore 2de04f2c37 implemented fallback arg for LabIcon.resolveX methods 5 years ago
.meeseeksdev.yml f2afcc5aad Add meessekdev bot config file 6 years ago
.prettierignore c89aaac0d9 deprecated `justify` => `elementPosition` across codebase 5 years ago
.prettierrc 9acddc14fb Add eslint interop 6 years ago
.yarnrc b513457b01 Update lerna (#5262) 6 years ago
CONTRIBUTING.md fe08e4a138 Change phosphor instructions to lumino for linking 5 years ago
CORPORATE.md 9bdc421624 fix typo 5 years ago
LICENSE 30c5ff152a Update copyright notice. (#4931) 6 years ago
MANIFEST.in 5d9b409777 Workspaces CLI (#5166) 6 years ago
README.md 3aa9ca32cc Sort maintainers list in alphabetical order 5 years ago
RELEASE.md 4f2f10cfc9 Add a script to push docs to gh-pages 5 years ago
azure-pipelines.yml b7eca11bb3 Update pipeline to include 1.x branch 5 years ago
clean.py aeb2115a07 simplified .cleanignore, added `@` pattern syntax 5 years ago
conftest.py 8fb3f7f6ab Add slow marker for python tests 5 years ago
lerna.json b513457b01 Update lerna (#5262) 6 years ago
lint-staged.config.js a530434117 attempt to fix lint-staged for both win and mac 5 years ago
package.json d071a4bbf3 Make deduplication commands fail on duplicates 5 years ago
readthedocs.yml 30aef10f21 do not install the package itself on readthdocs 5 years ago
setup.cfg 1072732cc8 We do not need universal wheels now that we do not support python 2. 5 years ago
setup.py f5f4fc5623 Add initial attempt at a GitHub action test script 5 years ago
setupbase.py fce154aaa6 Exclude .js.map files from the package 5 years ago
tsconfigbase.json df0b0f7438 Turn on strict null checks (except for services) 5 years ago
tslint.json c89aaac0d9 deprecated `justify` => `elementPosition` across codebase 5 years ago
yarn.lock c5b33e3deb ran integrity 5 years ago

README.md

Installation | Documentation | Contributing | License | Team | Getting help |

JupyterLab

PyPI version Downloads Build Status Documentation Status GitHub Discourse Gitter

Binder

An extensible environment for interactive and reproducible computing, based on the Jupyter Notebook and Architecture. Currently ready for users.

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 will eventually replace the classic Jupyter Notebook.

JupyterLab can be extended using npm packages that use our public APIs. To find JupyterLab extensions, search for the npm keyword jupyterlab-extension or the GitHub topic jupyterlab-extension. To learn more about extensions, see the user documentation.

The current JupyterLab releases are suitable for general usage, and the extension APIs will continue to evolve for JupyterLab extension developers.

Read the latest version's documentation on ReadTheDocs.


Getting started

Installation

JupyterLab can be installed using conda or pip. For more detailed instructions, consult the installation guide.

Project installation instructions from the git sources are available in the contributor documentation.

conda

If you use conda, you can install it with:

conda install -c conda-forge jupyterlab

pip

If you use pip, you can install it with:

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.

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 installation to enable the JupyterLab server extension:

jupyter serverextension enable --py jupyterlab --sys-prefix

Running

Start up JupyterLab using:

jupyter lab

JupyterLab will open automatically in the browser. See the documentation for additional details.

Prerequisites and Supported Browsers

Jupyter notebook version 4.3 or later is required. To check the notebook version, run the command:

jupyter notebook --version

The latest versions of the following browsers are currently known to work:

  • Firefox
  • Chrome
  • Safari

See our documentation for additional details.


Development

Contributing

To contribute to the project, please read the contributor documentation.

JupyterLab follows the Jupyter Community Guides.

Extending JupyterLab

To start developing an extension, see the developer documentation and the API docs.

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:

  • Afshin Darian, Two Sigma (co-creator, application/high-level architecture, prolific contributions throughout the code base).
  • Vidar T. Fauske, JPMorgan Chase (general development, extensions).
  • Tim George, Cal Poly (UI/UX design, strategy, management, user needs analysis)
  • Brian Granger, AWS (co-creator, strategy, vision, management, UI/UX design, architecture).
  • Jason Grout, Bloomberg (co-creator, vision, general development).
  • Max Klein, JPMorgan Chase (UI Package, build system, general development, extensions).
  • Fernando Perez, UC Berkeley (co-creator, vision).
  • Ian Rose, Quansight/City of LA (general core development, extensions).
  • Saul Shanabrook, Quansight (general development, extensions)
  • Steven Silvester, AWS (co-creator, release management, packaging, prolific contributions throughout the code base).

Maintainer emeritus:

  • Chris Colbert, Project Jupyter (co-creator, application/low-level architecture, technical leadership, vision, PhosphorJS)
  • Cameron Oelsen, Cal Poly (UI/UX design).
  • Jessica Forde, Project Jupyter (demo, documentation)

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.


Getting help

We encourage you to ask questions on the Discourse forum. A question answered there can become a useful resource for others.

Please use the GitHub issues page to provide feedback or submit a bug report. To keep resolved issues self-contained, the lock bot will lock closed issues as resolved after a period of inactivity. If related discussion is still needed after an issue is locked, please open a new issue and reference the old issue.

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 to listen in.