Euporie is a terminal based interactive computing environment for Jupyter.
Euporie's apps allow you to interact with Jupyter kernels, and run Jupyter notebooks - entirely from the terminal.
If you're working with Jupyter notebooks in a terminal only environment, like an SSH server or a container, or just prefer working in the terminal, then euporie is the tool for you!
Console | Notebook | Preview | Hub |
![https://github.com/joouha/euporie/assets/12154190/c8ea6e23-11bb-4ffc-a9e5-111f788c51ae](https://private-user-images.githubusercontent.com/12154190/296828400-c8ea6e23-11bb-4ffc-a9e5-111f788c51ae.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwOTIwNDYsIm5iZiI6MTczOTA5MTc0NiwicGF0aCI6Ii8xMjE1NDE5MC8yOTY4Mjg0MDAtYzhlYTZlMjMtMTFiYi00ZmZjLWE5ZTUtMTExZjc4OGM1MWFlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA5VDA5MDIyNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ4ODAzZTgwMjZlMDdkYzg4MGY1YWVlYWVlM2IzOGZhMTRmZDk3OTliZDkxZDRkMjNjMWIzNGJiNDA4YjA2M2MmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.JXBln6l-rKdHpBNOU8cJpYafqjAZycYf5PEOWDDMBR0)
You can install euporie with uv (recommended), or with pipx or pip
):
$ uv tool install euporie
$ # OR
$ pipx install euporie
$ # OR
$ python -m pip install --user euporie
You can also try euporie online here.
- Edit and run notebooks in the terminal
- Run code interactively in a console
- Display images using terminal graphics (sixel / iterm / kitty)
- Use Jupyter widgets interactively in the terminal
- Render rich kernel output (markdown, tables, images, LaTeX, HTML, SVG, & PDF)
- Tab-completion, line suggestions and contextual help
- Convert a console session to a notebook
- Micro / Vim / Emacs style key-bindings
Notebooks
You can edit a notebook using
euporie-notebook
, and passing the notebook's file path or URI as a command line argument:$ euporie-notebook notebook.ipynb
Alternatively, launch
euporie-notebooks
and open a notebook file by selecting "Open" from the file menu (Ctrl+O
).
Console
To connect to a Jupyter kernel and run code interactively in a console session, you can run
$ euporie-console
(You can press
Ctrl+C
to open the command palette ineuporie-console
).
Preview
To preview a notebook to the terminal, use the
euporie-preview
subcommand:$ euporie-preview notebook.ipynb
Hub
To run euporie hub, a multi-user SSH server for euporie apps, run:
$ euporie-hub --port 8022 --host-keys=ssh_host_ed25519_key --client-keys=authorized_keys
where
ssh_host_ed25519_key
is the path to your host key file, andauthorized_keys
is a file containing SSH public keys allowed to connect.
View the online documentation at: https://euporie.readthedocs.io/
The code is available on GitHub at: https://github.com/joouha/euporie
Euporie requires Python 3.8 or later. It works on Linux, Windows and MacOS