Runtimes & Jupyter
The built-in Runtimes & Jupyter plugin installs a Python, JDKs and Node.js versions inside the project, and runs Jupyter notebooks with the Python of the project. Its Runtimes window is on the right rail.
Runtimes of the project
Each runtime is downloaded into .atelier/runtimes/<python|jdk|node>/<version>, checked against its SHA-256 and unpacked there:
| Runtime | Source |
|---|---|
| Python | python-build-standalone (full builds, stable releases) |
| JDK | Eclipse Temurin (latest build of the chosen feature release) |
| Node.js | nodejs.org (latest release of each major version from 18) |
- For each runtime, the window offers the one of the system (the PATH) or one of the versions installed in the project. The choice is kept in
.atelier/config.json(runtimes), which can be versioned; the runtimes themselves are listed in.atelier/.gitignore. - New terminals of the project get the chosen runtimes first on their
PATH, plusJAVA_HOMEfor a JDK. A.venv(orvenv) at the root is activated as well (VIRTUAL_ENV). WSL terminals are left alone. - The versions pinned by the usual files are read:
.python-version,.java-version,.sdkmanrc(java=),.nvmrc,.node-version. When none of the installed versions gives the pinned one, a notification says so once and the window offers to install it (3.12installs the newest 3.12,lts/*the newest LTS). - Create .venv runs
python -m venv .venvwith the Python of the project. - The npm window shows the Node.js version of the project when there is one.
Jupyter notebooks
.ipynb files open as a notebook (the layout switch at the top right shows the JSON next to it or instead of it):
- Code cells are edited in place with highlighting; ▶ or Shift+Enter runs a cell, the toolbar runs all of them, interrupts or restarts the kernel and clears the outputs.
- Outputs are written into the notebook as Jupyter does: text, errors (without their colors), PNG, JPEG and SVG images, Markdown. Save the file to keep them.
- Markdown cells are rendered; double-click one to edit it. Cells can be added, moved, deleted and changed between code and Markdown.
- The kernel runs with the Python of the project: its
.venv, else its Python runtime, else the one of the system. It needsipykernelandjupyter_client: when they are missing, Install Jupyter runspip installin a terminal. - Open in JupyterLab starts
python -m jupyter labon the notebook (JupyterLab must be installed).
Search Everywhere: Runtimes: Show Project Runtimes, Jupyter: New Notebook, Jupyter: Install Jupyter in the Project Python, Jupyter: Open JupyterLab, Python: Create a Virtual Environment (.venv).