Project Jupyter () is a project with goals to develop
open-source software,
open standards, and services for
interactive computing across multiple
programming languages. It was spun off from
IPython
IPython (Interactive Python) is a command shell for interactive computing in multiple programming languages, originally developed for the Python programming language, that offers introspection, rich media, shell syntax, tab completion, and histo ...
in 2014 by
Fernando Pérez and Brian Granger. Project Jupyter's name is a reference to the three core programming languages supported by Jupyter, which are
Julia,
Python and
R. Its name and logo are an
homage
Homage (Old English) or Hommage (French) may refer to:
History
*Homage (feudal) /ˈhɒmɪdʒ/, the medieval oath of allegiance
*Commendation ceremony, medieval homage ceremony Arts
*Homage (arts) /oʊˈmɑʒ/, an allusion or imitation by one arti ...
to
Galileo
Galileo di Vincenzo Bonaiuti de' Galilei (15 February 1564 – 8 January 1642) was an Italian astronomer, physicist and engineer, sometimes described as a polymath. Commonly referred to as Galileo, his name was pronounced (, ). He was ...
's discovery of the
moons of Jupiter, as documented in notebooks attributed to Galileo. Project Jupyter has developed and supported the interactive computing products Jupyter Notebook, JupyterHub, and JupyterLab. Jupyter is financially sponsored by
NumFOCUS.
History

The first version of Notebooks for IPython was released in 2011 by a team including Fernando Pérez, Brian Granger, and Min Ragan-Kelley.
In 2014, Pérez announced a spin-off project from IPython called Project Jupyter. IPython continues to exist as a Python
shell and a kernel for Jupyter, while the
notebook
A notebook (also known as a notepad, writing pad, drawing pad, or legal pad) is a book or stack of paper pages that are often ruled and used for purposes such as note-taking, journaling or other writing, drawing, or scrapbooking.
History
...
and other
language-agnostic parts of IPython moved under the Jupyter name. Jupyter supports execution environments (called "kernels") in several dozen languages, including Julia, R,
Haskell,
Ruby, and Python (via the IPython kernel).
In 2015, about 200,000 Jupyter notebooks were available on
GitHub. By 2018, about 2.5 million were available.
In January 2021, nearly 10 million were available, including notebooks about the
first observation of gravitational waves and about the 2019 discovery of a
supermassive black hole.
Major
cloud computing providers have adopted the Jupyter Notebook or derivative tools as a frontend interface for cloud users. Examples include
Amazon SageMaker
Amazon SageMaker is a cloud machine-learning platform that was launched in November 2017. SageMaker enables developers to create, train, and deploy machine-learning (ML) models in the cloud. SageMaker also enables developers to deploy ML models on ...
Notebooks,
Google's
Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
Colaboratory,
and
Microsoft's Azure Notebook.
Visual Studio Code supports local development of Jupyter notebooks. As of July 2022, the Jupyter extension for VS Code has been downloaded over 40 million times, making it the second-most popular extension in the VS Code Marketplace.
''
The Atlantic'' published an article entitled "The Scientific Paper Is Obsolete" in 2018, discussing the role of Jupyter Notebook and the
Mathematica
Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
notebook in the future of scientific publishing.
Economist
Paul Romer
Paul Michael Romer (born November 6, 1955) is an American economist and policy entrepreneur who is a University Professor in Economics at New York University. Romer is best known as the former Chief Economist of the World Bank and for co-recei ...
, in response, published a blog post in which he reflected on his experiences using Mathematica and Jupyter for research, concluding in part that Jupyter "does a better job of delivering what
Theodore Gray had in mind when he designed the Mathematica notebook."
In 2021, ''
Nature'' named Jupyter as one of ten computing projects that transformed science.
Jupyter Notebook
Jupyter Notebook can colloquially refer to two different concepts, either the user facing application to edit code and text, or the underlying file format which is interoperable across many implementations.
Jupyter Notebook Applications
Jupyter Notebook (formerly IPython Notebook) is a
web-based interactive computational environment for creating
notebook
A notebook (also known as a notepad, writing pad, drawing pad, or legal pad) is a book or stack of paper pages that are often ruled and used for purposes such as note-taking, journaling or other writing, drawing, or scrapbooking.
History
...
documents. Jupyter Notebook is built using several
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
libraries, including
IPython
IPython (Interactive Python) is a command shell for interactive computing in multiple programming languages, originally developed for the Python programming language, that offers introspection, rich media, shell syntax, tab completion, and histo ...
,
ZeroMQ,
Tornado,
jQuery,
Bootstrap, and
MathJax. A Jupyter Notebook application is a browser-based
REPL containing an ordered list of input/output cells which can contain code, text (using
Markdown), mathematics,
plots and
rich media
Interactive media normally refers to products and services on digital computer-based systems which respond to the user's actions by presenting content such as text, moving image, animation, video and audio. Since its early conception, various f ...
.
Jupyter Notebook is similar to the notebook interface of other programs such as
Maple,
Mathematica
Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
, and
SageMath, a computational interface style that originated with Mathematica in the 1980s. Jupyter interest overtook the popularity of the Mathematica notebook interface in early 2018.
JupyterLab is a newer user interface for Project Jupyter, offering a flexible user interface and more features than the classic notebook UI. The first stable release was announced on February 20, 2018.
In 2015, a joint $6 million grant from
The Leona M. and Harry B. Helmsley Charitable Trust,
The Gordon and Betty Moore Foundation
The Gordon and Betty Moore Foundation is an American foundation established by Intel co-founder Gordon E. Moore and his wife Betty I. Moore in September 2000 to support scientific discovery, environmental conservation, patient care improvements a ...
, and
The Alfred P. Sloan Foundation
The Alfred P. Sloan Foundation is an American philanthropic nonprofit organization. It was established in 1934 by Alfred P. Sloan Jr., then-president and chief executive officer of General Motors.
The Sloan Foundation makes grants to support or ...
funded work that led to expanded capabilities of the core Jupyter tools, as well as to the creation of JupyterLab.
GitHub announced in November 2022 that JupyterLab would be available in its online Coding platform called Codespace.
JupyterHub is a multi-user server for Jupyter Notebooks. It is designed to support many users by spawning, managing, and proxying many singular Jupyter Notebook servers.
Jupyter Notebook Documents
A Jupyter Notebook document is a
JSON
JSON (JavaScript Object Notation, pronounced ; also ) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other ser ...
file, following a versioned schema, usually ending with the ".ipynb" extension.
The main parts of the Jupyter Notebooks are: Metadata, Notebook format and list of cells. Metadata is a data Dictionary of definitions to set up and display the notebook. Notebook Format is a version number of the software. List of cells are different types of Cells for Markdown (display), Code (to execute), and output of the code type cells.
While ".ipynb" and
JSON
JSON (JavaScript Object Notation, pronounced ; also ) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other ser ...
are the most common and default format it is possible to forgo some features (like storing images and metadata), and save notebook as markdown documents using extension like JupyText.
Jupytext is often in conjunction with version control to make diffing and merging of notebook simpler.
Awards
* In 2012,
Fernando Pérez received the
Free Software Foundation Award for the Advancement of Free Software for his work on
IPython
IPython (Interactive Python) is a command shell for interactive computing in multiple programming languages, originally developed for the Python programming language, that offers introspection, rich media, shell syntax, tab completion, and histo ...
, the precursor to Project Jupyter.