notebook/README.md

117 lines
4.3 KiB
Markdown
Raw Normal View History

2020-12-04 21:15:41 +08:00
# jupyterlab-classic
2020-12-08 00:51:17 +08:00
![Github Actions Status](https://github.com/jtpio/jupyterlab-classic/workflows/Build/badge.svg)
2020-12-11 07:45:04 +08:00
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/jtpio/jupyterlab-classic/main?urlpath=classic/notebooks/binder/example.ipynb)
2020-12-08 00:51:17 +08:00
2020-12-04 21:15:41 +08:00
The next gen old-school Notebook UI.
2020-12-08 00:45:58 +08:00
![image](https://user-images.githubusercontent.com/591645/101378325-400fa280-38b3-11eb-81a5-4c7a1aca780e.png)
2020-12-04 21:15:41 +08:00
## Install
2020-12-12 19:53:07 +08:00
**Pre-releases of `jupyterlab-classic` are now available!**
2020-12-10 23:35:16 +08:00
2020-12-12 19:53:07 +08:00
`jupyterlab-classic` can be installed with `pip`:
2020-12-04 21:15:41 +08:00
```bash
2020-12-12 19:53:07 +08:00
pip install jupyterlab-classic --pre
2020-12-04 21:15:41 +08:00
```
2020-12-12 19:53:07 +08:00
And with `conda` (coming soon):
2020-12-04 21:15:41 +08:00
```bash
conda install -c conda-forge jupyterlab-classic
```
## Usage
`jupyterlab-classic` can be started as a standalone app with:
```bash
2020-12-11 18:01:05 +08:00
jupyter classic
2020-12-04 21:15:41 +08:00
```
Existing federated JupyterLab extensions listed via:
```bash
jupyter labextension list
```
Should also be available when starting `jupyterlab-classic`.
2020-12-12 05:11:47 +08:00
### Files 📂 and Running Sessions 🏃‍♀️
2020-12-09 03:50:57 +08:00
2020-12-12 05:11:47 +08:00
![tree](https://user-images.githubusercontent.com/591645/101952684-54c4a100-3bf9-11eb-8031-6900f6d3a445.gif)
### Notebook 📒
![notebook](https://user-images.githubusercontent.com/591645/101953039-efbd7b00-3bf9-11eb-9d34-3cb663a5ac43.gif)
### Open in a new Browser Tab by default
![new-browser-tab](https://user-images.githubusercontent.com/591645/101954309-21374600-3bfc-11eb-80fc-447dce4e6ac6.gif)
### Command Palette 🎨
![command-palette](https://user-images.githubusercontent.com/591645/101953322-72ded100-3bfa-11eb-9b13-3a912e4f6844.gif)
### Themes 🌈
Support for existing JupyterLab themes!
![themes](https://user-images.githubusercontent.com/591645/101953333-75d9c180-3bfa-11eb-868f-af54d1ea7091.gif)
### Zen Mode 😌
![compact-zen-mode](https://user-images.githubusercontent.com/591645/101923740-149cf880-3bd0-11eb-9617-e3349a76d034.gif)
### Terminals 🖥️
![terminals](https://user-images.githubusercontent.com/591645/101954217-fc42d300-3bfb-11eb-84c3-fbf84896b829.gif)
### File Editor 🖊️
![image](https://user-images.githubusercontent.com/591645/101953590-e2ed5700-3bfa-11eb-9fee-0b6d964f0949.png)
### Compact View on Mobile Devices 📱
![mobile](https://user-images.githubusercontent.com/591645/101995448-2793f380-3cca-11eb-8971-067dd068ccbe.gif)
2020-12-12 05:11:47 +08:00
### Support for federated extensions 🧩
Install new extensions easily!
![federated-extensions](https://user-images.githubusercontent.com/591645/101954127-dd444100-3bfb-11eb-96be-fee87db5171d.gif)
### Switch between JupyterLab and JupyterLab Classic easily ↔️
![jupyterlab-switch](https://user-images.githubusercontent.com/591645/101954746-ec77be80-3bfc-11eb-85ed-7ac0922e365c.gif)
2020-12-09 03:50:57 +08:00
2020-12-04 21:15:41 +08:00
## Motivation
2020-12-08 00:45:58 +08:00
JupyterLab is the next-gen UI for Project Jupyter. Approaching version 3.0, it is becoming more mature and provides an advanced computational environment, that can sometimes be compared to what traditional IDEs offer.
2020-12-04 21:15:41 +08:00
However in some cases, having a leaner, simpler, and more focused interface to work on a notebook is really useful.
2020-12-08 00:45:58 +08:00
The single document mode as currently implemented in JupyterLab helps address this issue, but still displays a couple of visual cues that can be distracting to some users.
2020-12-04 21:15:41 +08:00
The goal of the `jupyterlab-classic` project is to look as close to the classic notebook UI as possible, while leveraging the efforts put in the development of JupyterLab itself and its extension system.
2020-12-08 00:45:58 +08:00
Technically speaking, `jupyterlab-classic` reuses **many** of the existing plugins for JupyterLab (notebook, toolbar), and also supports pre-built (federated) third-party extensions using the new distribution system added in 3.0. That way, extensions built for JupyterLab should also be compatible with `jupyterlab-classic`, as long as they can be added to the application shell provided by JupyterLab Classic.
2020-12-04 21:15:41 +08:00
## Prior art
This project is mostly a reboot of the two previous attempts at making something similar:
- [simplest-notebook](https://github.com/yuvipanda/simplest-notebook)
- [jupyterlab-clarity-mode](https://github.com/jupytercalpoly/jupyterlab-clarity-mode)
2020-12-08 00:45:58 +08:00
These projects really expressed the need for a stripped down, minimal version of the Jupyter Notebook UI.
2020-12-04 21:15:41 +08:00
2020-12-08 00:45:58 +08:00
`jupyterlab-classic` contributes to that space with the added features:
2020-12-04 21:15:41 +08:00
- Support for existing federated (prebuilt) JupyterLab extensions
2020-12-08 00:45:58 +08:00
- Zen Mode
2020-12-04 21:15:41 +08:00
- Repo structure, similar to JupyterLab
- Reusing as much as possible from upstream JupyterLab