Notebooks
Interactive notebooks have become indispensable tools for data science, education, and exploratory programming. Notebooks are used to write executable code alongside markdown, visualize results in real time, and share insights through dynamic, shareable documents ideal for education, research, and data-driven storytelling.
Jupyter¶
De facto standard for interactive computing in Python
JupyterLab: latest web-based interactive development environment for notebooks, code, and data.
Jupyter Notebook: original web application for creating and sharing computational documents. It offers a simple, streamlined, document-centric experience.
Can be used for more than Python (e.g. R, Julia)
Files are notebook files (.ipynb)
Usage¶
Install JupyterLab¶
When inside a uv project, run:
uv add jupyterlabWith a conda environment activated, run:
conda install -c conda-forge jupyter labUsing pip
pip install jupyterlabRun JupyterLab¶
When inside a uv project, run:
uv run jupyter labWith an environment activated, run:
jupyter labmarimo¶
next-generation Python notebooks
reactive: if a variable is changed on one cell, dependent cells are automatically updated
built-in interactive elements
Python-first, outputs are stored as standard Python scripts (.py)
Usage¶
Install marimo:¶
When inside a uv project, run:
uv add marimoWith a conda environment activated, run:
conda install -c conda-forge marimoUsing pip:
pip install marimoRun marimo¶
Create or edit notebook
marimo edit PYTHON_SCRIPT.pyRun as read-only app
marimo run PYTHON_SCRIPT.pyRun marimo with uv
uv run marimo <MARIMO COMMANDS>