Jupyter Notebook
What is Jupyter Notebook?
Jupyter Notebook is an open-source, web-based application for creating and sharing documents that combine live code, narrative text, equations, and visualizations in a single file (.ipynb). It supports over 40 programming languages through interchangeable kernels, though Python is the most common.
"Jupyter" itself refers to the broader open-source initiative, Project Jupyter, named for the three languages it originally supported: Julia, Python, and R. Jupyter Notebook is the original application built by that project; JupyterLab is Project Jupyter's newer, more advanced interface, covered below.
Why Jupyter Notebook matters
A notebook has independent, executable code cells that run in any order, so you can test an idea, see the result immediately, and adjust without re-running an entire script. Kernels, the processes that execute code and return output, also support tab completion and introspection. Notebooks convert to HTML, LaTeX, PDF, Markdown, and plain Python through the "Download As" menu or the nbconvert command-line tool, which makes them straightforward to share as a static report or extract into a production script.
As an interactive Python notebook environment, Jupyter is also a common foundation for reproducible research: because code, output, and narrative live in the same file, another person can open the notebook and see exactly how a result was produced, not just the result itself.
JupyterLab vs. Jupyter Notebook
Both interfaces run the same notebooks and kernels; they differ in how much workspace they give you.
Jupyter Notebook
JupyterLab
Interface
Single-document, linear
Multi-panel, tabbed, IDE-like
File browser
Separate dashboard page
Persistent sidebar
Project Jupyter now recommends JupyterLab as the primary interface, but Jupyter Notebook remains actively maintained and is still the better fit for a single, focused analysis or a classroom setting where a simpler interface reduces distraction.
When should you use Jupyter Notebook?
Reach for Jupyter Notebook when the work is a single, self-contained analysis: exploring a new dataset, prototyping a model before it has a home in a pipeline, or writing up a result for someone else to read. Move to JupyterLab once a project outgrows a single file, since its file browser, built-in terminal, and multi-panel layout are built for juggling several notebooks and scripts at once.
As a project grows past a handful of notebooks, the same flexibility that makes notebooks good for exploration (no enforced structure, code and state that can run out of order) starts to work against maintainability. That's usually the point where teams move shared logic out of notebooks and into versioned modules or a collaborative development environment, keeping the notebook itself for exploration and the write-up.
How do you install Jupyter Notebook?
Jupyter Notebook comes pre-installed in Domino's standard compute environments, alongside R, Python, and RStudio, so most Domino users never need to install it directly.
Outside a managed environment, install it with pip:
pip install notebookor with conda, which additionally manages non-Python dependencies and is common in data science environments that mix Python with other tools:
conda install -c conda-forge notebook
Then launch it:
jupyter notebookFAQ
Is Jupyter Notebook free?
Yes. Jupyter Notebook is open-source and free to use, install, and modify.
What is Jupyter Notebook used for?
Jupyter Notebook is used for exploratory data analysis, prototyping machine learning models as part of a broader MLOps workflow, and documenting code and results together for reproducibility. It's especially common in early-stage, iterative work where you're testing ideas before formalizing a pipeline.
Do I need JupyterLab, or is Jupyter Notebook enough?
For a single notebook and a focused task, Jupyter Notebook is enough. Move to JupyterLab once you're regularly juggling multiple notebooks, scripts, and a terminal in the same project.