Fact-checked by Grok 2 weeks ago

Project Jupyter

Project Jupyter is a non-profit, open-source initiative focused on developing software, open standards, and services for interactive computing across multiple programming languages. Originating from the project in 2014, it provides tools that enable reproducible and collaborative workflows in , scientific computing, and . The project is best known for the Jupyter Notebook, a web-based application that integrates live code execution, visualizations, mathematical equations, and explanatory text within a single document, supporting over 100 programming languages through community-developed kernels. The roots of Project Jupyter trace back to 2001, when Fernando Pérez, then a graduate student at the , created as an enhanced interactive shell for to facilitate exploratory programming during his work. In 2004, Brian Granger joined Pérez, and together they expanded into a comprehensive architecture for interactive computing, incorporating features like notebook interfaces and multi-language support. By 2014, as the project grew beyond to encompass dozens of languages, it was rebranded as Project Jupyter—named after , , and —to reflect its broadened scope and commitment to open scientific computing. This evolution was driven by a core team including Pérez, Granger, and others, under a modified BSD license to ensure free global accessibility. Key components of Project Jupyter form a modular ecosystem designed for flexibility and extensibility. The Jupyter Notebook serves as the foundational interface, allowing users to execute code in cells and interleave it with rich media for literate programming. Building on this, JupyterLab emerged in 2018 as the next-generation interface, offering a customizable workspace with multiple documents, a file browser, and extensions for advanced workflows. Other core tools include JupyterHub, a multi-user server for sharing notebooks in educational or organizational settings, and Binder, a service that launches interactive environments from repositories without installation. These components are developed collaboratively on GitHub, with kernels enabling language-specific execution and frontends providing diverse user interfaces. Project Jupyter has profoundly influenced modern computational practices, becoming a standard tool in fields like , astronomy, and bioinformatics due to its emphasis on and transparency. Adopted by major institutions such as , , and numerous universities, it supports a global community of contributors governed by an Executive Council and Steering Committees, with ongoing recognition through programs like Distinguished Jupyter Contributors. Funded by sponsors including NumFOCUS and tech companies like and AWS, the project continues to advance by promoting computational narratives that blend code, data, and prose.

History

Origins and IPython

IPython was founded in 2001 by Fernando Pérez, then a graduate student in physics at the , as an enhanced command-line shell for specifically tailored to the demands of interactive scientific computing. Pérez developed to meet his own research needs during his thesis work, where the standard interactive shell proved inadequate for handling complex , , and exploration in real time. The project began as a personal set of extensions to 's REPL, merging enhancements with open-source tools like the GNU Readline library for improved command-line editing and the Leo editor for advanced line execution. Early versions of IPython introduced key features that distinguished it from the vanilla Python shell, including tab completion for efficient code entry, comprehensive history to recall and edit previous commands, and "magic" commands such as %timeit for precise timing of code snippets. These additions facilitated and iteration, essential for scientific experimentation, by providing better , object , and with Python's for numerical via libraries like . Over the next decade, IPython evolved into a robust system supporting and distributed tasks, but its core remained focused on enhancing interactivity for Python users in settings. In 2011, with the release of IPython 0.12, the project introduced the IPython notebook, a web-based interface that integrated executable code cells with their outputs and rich markdown documentation in a single, shareable document. This innovation directly tackled longstanding challenges in scientific workflows, such as the difficulty in reproducing analyses due to fragmented scripts and notes, by enabling where code, results, and narrative explanations coexist seamlessly. The notebook format promoted transparency and , allowing researchers to document their processes in a format that preserved both computational and explanatory elements for verification and extension. This foundation in IPython's interactive tools laid the groundwork for its later expansion into the multi-language Project Jupyter in 2014.

Formation and Evolution

Project Jupyter was officially launched in as a spin-off from the project, led by Fernando Pérez, Granger, and Min Ragan-Kelley at the . This initiative separated the notebook interface and kernel components from the core codebase to enable broader applicability beyond , fostering a more modular architecture for interactive computing. The project emerged from collaborative efforts among developers to address the growing need for language-agnostic tools in and scientific workflows. The name "Jupyter" derives from the core programming languages it initially targeted—Julia ("Ju"), ("Py"), and R ("R")—symbolizing its commitment to multi-language support from inception. This rebranding and restructuring marked a pivotal shift toward open standards for interactive environments, distancing the project from its Python-centric origins while building on IPython's interactive shell foundations. Early organizational support came from NumFOCUS, which sponsored the project starting in 2014, alongside academic partnerships such as with (Cal Poly) for collaborative development. In 2015, coinciding with the release of IPython 4.0, Jupyter Notebook 4.0 was introduced as the first stable version under the new project umbrella, completing the separation and enabling seamless integration with diverse kernels. This release facilitated the debut of the first non-Python kernels for (via IJulia) and (via IRKernel), allowing users to execute code in these languages within the same and demonstrating the project's multi-language vision in practice.

Key Milestones

In 2017, Project Jupyter held its inaugural JupyterCon conference in from August 22 to 25, attracting over 700 attendees for tutorials, talks, and keynotes that fostered community collaboration and established an annual tradition for sharing advancements in interactive computing. The development of JupyterLab progressed significantly in this period, with an alpha version released in July 2016 as a preview of the next-generation interface, followed by the stable 1.0 release on February 20, 2018, which introduced a flexible, plugin-based environment to succeed the classic Jupyter Notebook. Funding efforts advanced Jupyter's sustainability, including a 2015 grant from the that supported ongoing development and community initiatives, alongside a 2020 award from the Chan Zuckerberg Initiative's Essential for program, which provided resources for enhancing collaboration features and long-term maintenance. Recent innovations include the 2021 launch of JupyterLite, a browser-based distribution enabling interactive computing without server dependencies via , and the 2023 release of Jupyter AI on August 2, which integrated generative models into JupyterLab for code generation and tasks. Milestone software updates featured the July 26, 2023, release of Jupyter Notebook 7.0, which aligned its architecture with JupyterLab for improved extensibility and real-time collaboration while maintaining backward compatibility. Governance evolved under NumFOCUS sponsorship until October 2024, when Project Jupyter transitioned to LF Charities for enhanced fiscal and operational support, culminating in the November 2024 formation of the Jupyter Foundation and the completion of 2025 Executive Council elections to guide future leadership.

Architecture

Client-Server Model

Project Jupyter employs a that separates the user interface from the computational backend, enabling flexible and scalable interactive computing environments. The frontend, typically a browser-based such as JupyterLab or the classic , runs in the user's and handles user interactions, rendering outputs, and managing the visual layout of documents. This frontend communicates with the backend server using RESTful APIs for operations like file management and session control, and WebSockets for real-time, bidirectional messaging to support interactive features like code execution feedback and live updates. At the core of the backend is the Jupyter Server, a Python-based application built on the Tornado web server framework, which orchestrates the overall system. It manages kernel sessions by starting and terminating language-specific kernels as needed, handles file operations within the notebook directory, and allocates resources for concurrent computations. This server acts as an intermediary, translating web requests into appropriate kernel communications and ensuring isolation between different user sessions. By decoupling the UI from the execution environment, the architecture allows the frontend to remain lightweight while offloading intensive computations to the server, which can run on local machines, remote clusters, or cloud infrastructure. The client-server model offers several key benefits, including support for remote execution where users can interact with powerful hardware without local installation of all dependencies, multi-user environments through session isolation (extendable via tools like JupyterHub), and the ability to swap or extend components independently—for instance, replacing the default frontend with custom interfaces while retaining the same server backend. is integrated into this design with token-based enabled by default, where a randomly generated token authenticates requests via headers, URL parameters, or login forms, preventing unauthorized access. Additionally, the server supports configurable (CORS) policies through settings that allow administrators to define allowed origins, methods, and headers, facilitating secure deployments in web-based or proxied setups.

Kernels and Language Support

Kernels in Project Jupyter are lightweight, separate processes that execute user code in a specified programming language and return the resulting outputs, such as standard output streams, images, errors, or other data representations. These processes operate independently from the frontend interface, enabling interactive computing without embedding the execution environment directly into the client. By design, kernels are pluggable components that adhere to Jupyter's architecture, allowing developers to create implementations for virtually any programming language as long as they conform to the Jupyter messaging . This design facilitates broad language support, with over 100 official and community-developed kernels available as of 2025, enabling execution in diverse environments from scientific computing to general-purpose scripting. Prominent examples include the kernel provided by ipykernel (formerly part of ), which powers the majority of Jupyter usage in and ; the IRkernel for , supporting statistical analysis and visualization; and IJulia for , optimized for high-performance numerical computations. Additional kernels exist for languages like , , and even domain-specific ones such as or SQL, demonstrating Jupyter's versatility across ecosystems. The lifecycle of a kernel begins with its startup, typically initiated when a user selects it for a notebook or console session, establishing a connection via the Jupyter server. Once active, the kernel receives code from individual cells or commands, executes them in its environment, and communicates results back; it supports interruption for long-running tasks—such as via a "Kernel > Interrupt" command in the interface—and graceful shutdown to release resources. Throughout execution, kernels handle introspection features like code completion and variable inspection, enhancing interactivity. Kernels support rich, multimedia outputs beyond plain text, leveraging MIME types to transmit diverse data formats for rendering in the frontend. For instance, a matplotlib plot in Python can be returned as an image/png MIME type, allowing inline visualization, while error messages might use text/plain or application/json for structured display. This mechanism ensures outputs like tables, figures, or even HTML widgets are portable and consistently rendered across compatible interfaces. Installation and management of kernels are handled through the Jupyter command-line tools, primarily via the jupyter kernelspec module, which registers kernel specifications in standardized directories. To add a Python kernel, users typically install the ipykernel package with pip install ipykernel and register it using python -m ipykernel install --user --name mykernel, specifying options for display names and execution paths. For isolated environments, such as those created with Conda, one can activate the environment, install ipykernel, and register the kernel to enable version-specific execution without conflicts. Commands like jupyter kernelspec list and jupyter kernelspec remove facilitate discovery and removal, ensuring clean management across multiple installations.

Communication Protocols

The Jupyter Messaging Protocol is a standardized, asynchronous communication system that enables interaction between Jupyter frontends (such as notebooks or consoles) and kernels, facilitating code execution, output display, and control operations across diverse programming languages. Built on the library, it employs a publish-subscribe and request-reply pattern over multiple dedicated channels (sockets) to handle concurrent messaging without blocking, ensuring efficient and reliable data exchange in environments. The protocol defines five primary channels for distinct purposes: the shell channel manages request-reply interactions for core operations like code execution; the IOPub channel serves as a broadcast mechanism for publishing kernel outputs, such as stdout, stderr, and execution results, to all connected frontends; the stdin channel handles input requests from the ; the control channel supports administrative requests like interruption; and the heartbeat channel monitors liveness through periodic ping-pong . Key types include execute_request and execute_reply on the shell channel for initiating and responding to code runs, stream on IOPub for stdout/stderr output, and input_request on stdin for prompting . Each follows a structured format comprising a header (with like session ID and type), parent_header (referencing prior ), content (specific ), (optional annotations), and a for . Security is enforced through HMAC-based , where a key generates a digest of the message field, allowing clients to authenticate incoming messages and kernels to validate client requests; this can be disabled by setting an empty key, though it is not recommended for production use. The channel detects kernel failures by expecting timely replies to pings, triggering reconnection if unresponsive. The protocol originated in IPython and reached version 5.0 with the release of IPython 3.0 on February 27, 2015, marking a major standardization effort that decoupled language-specific implementations from the core messaging framework and introduced robust support for multi-language . Subsequent evolutions, such as in Jupyter Client 5.0.0 (released February 20, 2017), refined version 5.0 with enhanced streaming capabilities for stdin/stdout via dedicated IOPub messages, improving real-time interactivity without interrupting execution flows. Later versions, like 5.3, added features such as control channel interrupts for graceful shutdowns, maintaining while extending functionality.

User Interfaces

Jupyter Notebook

The Jupyter Notebook is the original web-based interactive computing environment developed as part of Project Jupyter, enabling users to create and share documents that blend executable , explanatory text, mathematical expressions, and visualizations. Introduced in 2011 as the IPython Notebook with the release of 0.12 on December 19, 2011, it was created by a team led by Fernando Pérez, Brian Granger, and Min Ragan-Kelley to facilitate exploratory computing in . This interface revolutionized scientific workflows by allowing inline execution and rendering of outputs directly within the document, supporting reproducibility through a stateful kernel session. At its core, the Jupyter Notebook employs a cell-based editing model, where content is organized into discrete cells of three primary types: code cells for executing programming instructions, cells for formatted text and , and raw cells for unprocessed text that preserves original formatting. The features a simple, single-document layout with a at the top providing essential actions such as inserting new cells, running or deleting them, changing cell types, and advancing to the next cell upon execution. An outline view sidebar displays the document's structure, allowing quick navigation to specific cells or headings, while outputs from code cells—such as plots, tables, elements, or rendered equations—are displayed inline immediately below the cell for seamless integration of results. The workflow in Jupyter Notebook revolves around sequential cell execution within a persistent session, where variables and results from prior cells remain in to support iterative and . Users can execute cells individually using Shift+Enter or run all cells via the to simulate a full , with options to restart the kernel and clear outputs for ensuring clean, reproducible runs without residual state. This design promotes a linear, narrative-driven approach to , ideal for prototyping and in , though it maintains a focus on one document at a time. The notebook files are saved in the JSON-based .ipynb format, which encapsulates , outputs, and for easy sharing. Over time, the classic Jupyter Notebook's emphasis on a streamlined, single-tab highlighted certain constraints, such as the absence of an integrated file browser and limited support for multi-document workflows, which were later addressed in subsequent interfaces like JupyterLab. Despite these, it remains a foundational for interactive , widely used for its simplicity and direct support for core interactivity features.

JupyterLab

JupyterLab is the next-generation for Project Jupyter, launched in as a flexible and extensible environment that builds upon the classic . It features a allowing users to arrange multiple components, such as notebooks, consoles, terminals, and file viewers, through drag-and-drop panels in a customizable . This enables a desktop-like workspace where documents and activities can be opened in tabs, split views, or sidebars, supporting efficient multitasking for interactive tasks. The extension system in JupyterLab is built on NPM-based plugins, which allow developers to create and distribute modules that enhance functionality without modifying the core application. These plugins support a wide range of customizations, including themes for visual styling, widgets for interactive elements like variable inspectors, and integrations such as for directly within the interface. Over 100 official extensions are available, covering tools for code formatting, data visualization, and productivity features, all installable via , conda, or the built-in Extension Manager. JupyterLab includes support for real-time collaboration through shared sessions, enabled by the jupyter_collaboration extension starting from version 4.0, which allows multiple users to edit notebooks and other documents simultaneously with live cursors and changes visible in real time, without predefined user roles. Additionally, it integrates the (LSP) via the jupyterlab-lsp extension, providing advanced , hover suggestions, linting, and navigation across supported languages like , , and . Migration from the classic Jupyter Notebook to JupyterLab is facilitated by backward compatibility, with Notebook 7.0—released in 2023—adopting JupyterLab's server architecture to unify the ecosystem and enable seamless transitions. This update allows existing Notebook users to access JupyterLab's advanced features while maintaining support for legacy extensions through alternatives like nbclassic, ensuring a smooth path for adoption without disrupting workflows.

Alternative Interfaces

JupyterLite is an in-browser implementation of JupyterLab that runs entirely within web browsers using and , a port of to , allowing users to execute code offline without requiring a server backend. Released in , it supports JupyterLab components and extensions, enabling interactive computing sessions directly in the browser for lightweight, portable environments. Voila, released in 2019, transforms Jupyter notebooks into standalone web applications or dashboards by rendering notebook outputs statically while preserving interactivity for widgets and code execution. This tool facilitates sharing computational results as deployable apps, integrating with Jupyter kernels for languages like and , without exposing the full notebook editing interface. Other alternative interfaces include nteract, a desktop application launched in 2017 that provides local editing and execution of Jupyter notebooks using for cross-platform support on Windows, macOS, and . Similarly, JupyterLab Desktop, introduced in 2021, offers a packaged distribution of JupyterLab as a self-contained application, bundling a Python environment with common libraries for quick setup and offline use, though maintenance has been limited since August 2025. As of 2025, mobile adaptations have emerged, such as accessing Jupyter environments via for cloud-based execution through mobile web browsers, enabling on-the-go interaction with without native apps.

Document Formats and Features

Notebook Document Structure

The Jupyter notebook document is stored in the .ipynb , a JSON-based structure that ensures portability and enables seamless sharing across Jupyter-compatible tools and platforms. This format encapsulates executable code, outputs, and narrative content in a single, human-readable file, facilitating reproducibility in computational workflows. At the root level, the JSON object includes four primary fields: "cells", an array of cell objects; "metadata", a for notebook-wide information; "nbformat", an integer indicating the major version; and "nbformat_minor", an integer for the minor version. The nbformat version 4, introduced in 2015 with Jupyter Notebook 4.0, established the current standard and has remained backward-compatible through subsequent minor updates, up to version 4.5 (nbformat_minor: 5) as of 2023. The "cells" field forms the document's core, comprising an ordered list of dictionaries, each representing a cell with keys like "cell_type", "id" (a unique identifier for the cell, introduced in version 4.5), "" (a list of s for the cell's content), "" (cell-specific options), and, for executable cells, "outputs" (an of output objects) and "execution_count" (an tracking execution order). Three cell types are defined: "code" for executable snippets with associated outputs; "markdown" for rendered narrative text using syntax; and "raw" for unprocessed input that passes through without execution or formatting. Code cell outputs support multiple types, including text/plain for textual results and image/svg+xml for , stored in a "data" dictionary within each output object alongside execution metadata. Notebook metadata encompasses fields such as "kernelspec" for kernel specifications, "language_info" detailing the default (e.g., with its version and file extension), and "autosave_interval" for automatic saving frequency in milliseconds. Output objects in code cells include an "execution_count" to maintain execution history, ensuring even after re-execution. Validation of .ipynb files relies on the nbformat library, which implements the official for parsing, serializing, and verifying notebook structure in environments. This library enforces compliance using jsonschema and supports version migration for , allowing notebooks from earlier nbformat versions to be read and converted without data loss.

Interactivity and Extensions

Project Jupyter supports core interactivity through features like cell magics and interactive widgets, enabling dynamic computations and visualizations within notebooks. Line magics, prefixed with a single '%', operate on the current line of input (e.g., %matplotlib inline, which configures to display static images of plots directly in the notebook output without opening external windows). This enhances workflow efficiency by integrating graphical outputs seamlessly into the document. Cell magics, prefixed with '%%', apply to the entire cell, supporting a range of interactive behaviors like timing code execution (e.g., %%time) or debugging. The ipywidgets library, introduced in 2015, provides interactive HTML widgets such as sliders, buttons, and dropdowns for creating s within notebooks. These widgets allow real-time parameter adjustment and visualization updates, for example, using a slider to vary function inputs and observe changes in plots. Widget outputs are embedded in the notebook document, supporting reproducible interactive analyses. JupyterLab's extension architecture enables customization through server extensions, which modify backend behavior, and frontend extensions, which enhance the . Extensions are typically installed as prebuilt packages via or conda, with older methods using the jupyter labextension command for JavaScript-based frontend additions. Examples include nbconvert preprocessors that transform notebooks before export or execution, such as applying filters to clean outputs, and capabilities configurable in settings to collapse code sections for better readability. The Extension Manager in JupyterLab's sidebar facilitates searching, installing, and managing these extensions from repositories like PyPI. Customization options in JupyterLab include themes for visual styling, applied via CSS files or dedicated extensions to alter colors, fonts, and layouts, and configurable keyboard shortcuts editable through the Advanced Settings Editor. Users can override defaults, such as remapping cell execution commands, to match preferred workflows. Additionally, integration with the (LSP) via the jupyter-lsp extension provides language-agnostic autocompletion, hover tooltips, and linting across kernels like , , and , improving code editing efficiency. Security considerations in Jupyter address risks from untrusted notebooks, which may contain malicious HTML, JavaScript, or code. The platform implements a trust model where newly opened notebooks are marked untrusted by default, disabling JavaScript execution in outputs and prompting users to explicitly trust before running cells to prevent arbitrary code execution. This model sanitizes outputs and requires user consent for full interactivity, mitigating threats like cross-site scripting while allowing safe handling of shared content. Once trusted—after re-execution or manual approval—the notebook enables all features, but users are advised to verify sources for potentially harmful code.

Export and Sharing Options

The nbconvert tool, part of the Jupyter ecosystem, converts Jupyter notebook files (.ipynb) into static formats such as , PDF (generated via ), , , Python scripts, and presentation slides using Reveal.js. This functionality supports batch processing and execution of notebooks during conversion, making it suitable for preparing documents for publication or distribution. Customization is achieved through Jinja2 templates, allowing users to modify layouts, styling, and content rendering to fit specific requirements, such as academic papers or web pages. For sharing notebooks, GitHub provides native rendering of .ipynb files as interactive previews within repositories, displaying code, outputs, and markdown in a notebook-like format without requiring additional tools. nbviewer, a free service hosted by the Jupyter project, generates static, rendered views of notebooks from URLs on GitHub, Gists, or other sources, enabling quick sharing of read-only versions accessible via a simple link. Binder, available at mybinder.org, extends sharing to interactive environments by building Docker containers from Git repositories containing notebooks, dependencies, and configuration files, allowing remote execution in a browser-based Jupyter interface. Binder incorporates versioning by launching sessions tied to specific GitHub commits, branches, or tags, ensuring reproducible results across different users and time points. For more complex publications, the Executable Books Project's Jupyter Book, launched in 2019, enables the assembly of multiple notebooks into cohesive, web-based books with executed code, interactive elements, and navigation, supporting formats like and PDF for broader dissemination. As of 2025, cloud platforms like Google Colab offer seamless integration with Jupyter workflows, permitting direct upload, editing, and export of .ipynb files to formats including and Python scripts, alongside collaborative features.

Applications and Impact

Scientific and Research Use

Project Jupyter has become a cornerstone in data science workflows, enabling the creation of interactive analysis pipelines that integrate core libraries such as for efficient numerical computations, for data manipulation and analysis, and for advanced scientific computing and optimization tasks. This integration supports end-to-end data processing, from to model prototyping, fostering collaborative and iterative research practices. In astronomy, Jupyter notebooks facilitate complex data handling through the ecosystem, where researchers use them to query astronomical databases, perform coordinate transformations, and visualize large-scale datasets from telescopes. For instance, NASA's High Energy Astrophysics Science Archive Research Center (HEASARC) employs Jupyter with Astropy-affiliated tools like PyVO to access and analyze archival data via Virtual Observatory protocols. Similarly, the Atacama Large Millimeter/submillimeter Array () provides Jupyter notebooks for programmatic access to its science archive, enabling astronomers to process interferometric data interactively. Bioinformatics research leverages Jupyter for and , with notebooks supporting tasks like parsing genomic data, aligning sequences, and visualizing protein structures. These notebooks allow integration of modules with visualization tools such as nglview for interactive 3D rendering of molecular models directly in the browser. At major research institutions, Jupyter underpins specialized workflows; NASA's Openscapes initiative uses it for cloud-based analysis, combining satellite with reproducible simulations on resources. deploys JupyterHub instances with support for languages like and C++ via the Cling kernel, facilitating data-intensive experiments and pipelines on distributed systems. These implementations highlight Jupyter's for high-throughput scientific computing. Jupyter enhances in by capturing execution s through tools like conda environment exports, which detail package versions and dependencies for exact recreation of analysis conditions. Notebooks can be assigned digital object identifiers (DOIs) via platforms like , allowing persistent citation and verification of computational results in peer-reviewed publications. This feature addresses common reproducibility challenges, such as dependency mismatches, by enabling automated rebuilding of environments. The platform's impact is evident in its widespread use, with Jupyter notebooks linked to over 3,400 peer-reviewed biomedical publications alone, demonstrating its role in verifiable scientific across disciplines. Surveys indicate that more than one-third of data professionals rely on Jupyter for core research tasks, underscoring its influence on modern scientific methodologies.

Education and Training

Project Jupyter has significantly enhanced pedagogical approaches in education by enabling , which provides immediate feedback and fosters . This interactivity allows students to experiment with code in real-time, and iterating on concepts such as programming logic or manipulation without the barriers of traditional execution. Furthermore, the integration of cells supports narrative explanations alongside code, facilitating the creation of comprehensive tutorials that blend theory, examples, and visualizations to improve conceptual understanding in subjects like and . Jupyter notebooks are widely incorporated into online platforms and university curricula for teaching programming and data literacy. For instance, DataCamp utilizes Jupyter in numerous courses, such as those on for , where learners execute code interactively within guided exercises. Similarly, offers specialized courses like "First Steps in with Jupyter Notebooks," which introduce syntax and collaboration tools through notebook-based labs. In higher education, institutions such as the , have adopted Jupyter for large-enrollment introductory and courses, enabling scalable instruction with embedded assessments and visualizations. To support classroom implementation, specialized tools like NBGrader automate the grading of assignments by evaluating outputs against predefined tests, streamlining feedback for instructors in programming and courses. Complementing this, JupyterHub serves as a multi-user , allowing educators to deploy shared computational environments for entire classes without requiring individual installations, thus accommodating diverse classroom sizes and remote learning needs. Adoption of Jupyter in educational settings has grown substantially, reflecting its role in modernizing training. This trend underscores Jupyter's impact on fostering data literacy and interactive teaching methods across global institutions.

Industry Adoption

Project Jupyter has gained widespread adoption in commercial environments, particularly for and tasks, due to its flexible, interactive nature that supports and . Enterprises leverage tools like JupyterHub to enable scalable, multi-user deployments, allowing teams to access shared computational resources without individual setup overhead. For example, employs JupyterHub to power notebook-based workflows across its data science and engineering teams, facilitating everything from data exploration to automated scheduling of analyses. Integration with has further enhanced Jupyter's suitability for production-scale operations, enabling containerized environments that dynamically allocate resources for intensive computations. supports this through official templates for deploying JupyterHub on Google Kubernetes Engine (GKE), which streamline setup for enterprise users handling large-scale data processing. In prototyping, Jupyter notebooks serve as a core tool for iterating on models with frameworks such as and , allowing developers to combine code, visualizations, and in a single interface. At , these notebooks are used to prototype ML experiments, access datasets, and create parameterized templates for reproducible results. Tech companies also apply Jupyter for , where interactive analysis of experiment outcomes accelerates decision-making in product development. Commercial extensions tailor Jupyter for domain-specific needs, such as and enterprise platforms. Bloomberg has developed and contributed JupyterLab extensions like ipydatagrid, which provides interactive grid views for manipulating large financial datasets akin to tools. IBM's Studio embeds Jupyter notebooks directly into its cloud-based environment, enabling users to build, train, and deploy ML models with integrated access to AI services. Market data underscores Jupyter's prominence, with approximately 69% of data scientists reporting use of notebooks for in recent industry assessments. Companies like Anaconda actively contribute to the , funding developments such as Nbclassic for legacy notebook support and Jupyter-FSSpec for enhanced file handling in distributed systems.

References

  1. [1]
    Project Jupyter | About Us
    Project Jupyter is a non-profit, open-source project, born out of the IPython Project in 2014 as it evolved to support interactive data science and scientific ...
  2. [2]
    Project Jupyter | Home
    The Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, ...Installing Jupyter · Try Jupyter · Project Jupyter | About Us · Jupyter BlogMissing: history | Show results with:history
  3. [3]
    Computational Narratives as the Engine of Collaborative Data Science
    Jul 7, 2015 · Today's Jupyter evolved from the IPython project, created in 2001 as an interactive Python shell by Dr. Fernando Perez. Dr. Brian Granger joined ...<|separator|>
  4. [4]
    Project Jupyter: A Computer Code that Transformed Science
    Jun 14, 2021 · A computer code (Project Jupyter) co-developed by Berkeley Lab's Fernando Perez and embraced by the global science community over two ...
  5. [5]
    Jupyter receives the ACM Software System Award
    May 2, 2018 · ... Fernando Pérez announced his open source IPython project as a graduate student in 2001. IPython provided tools for interactive computing in ...What Is Jupyter? · Get Project Jupyter's... · Growing A Community
  6. [6]
    As Project Jupyter celebrates 20 years, Fernando Pérez reflects on ...
    Aug 19, 2021 · Twenty years ago, UC Berkeley Associate Statistics Professor Fernando Pérez started one of the foundational tools for analyzing large amounts of ...
  7. [7]
    0.12 Series — IPython 3.2.1 documentation
    IPython 0.12 introduced an interactive browser-based Notebook, a two-process terminal console, and full Python 3 compatibility.
  8. [8]
    Software System Award Honors Project Jupyter Team
    May 2, 2018 · The team behind Project Jupyter, an effort pioneered by Fernando Pérez, an assistant professor of statistics at UC Berkeley and staff scientist in the Usable ...
  9. [9]
    The Big Split™ | by Project Jupyter
    Apr 15, 2015 · Splitting IPython means creating new repos for each of the subprojects, which we did last week. We created eleven new repos (!), which you can ...
  10. [10]
    What is Jupyter?
    The name Jupyter comes from the three programming languages the project originally supported: Julia (ju), Python (pyt) and R (r).What Is A ``computational... · How Do The Jupyter... · A (partial) Tour Of The...
  11. [11]
    Project Jupyter | PyData
    Project Jupyter. NumFOCUS Sponsored Project since 2014. Project Jupyter develops tools for interactive computing, research and education with an emphasis in ...Missing: initial funding
  12. [12]
    Jupyter Collaboration Led by Cal Poly and UC Berkeley Receives ...
    Project Jupyter may be the best kept secret on the Cal Poly campus, but it's well-known at companies such as Microsoft, Google and IBM.Missing: NumFOCUS | Show results with:NumFOCUS
  13. [13]
    4.x Series — IPython 9.6.0 documentation
    IPython 4.0 . Released August, 2015. IPython 4.0 is the first major release after the Big Split. IPython no longer contains the notebook, qtconsole, etc.
  14. [14]
    Jupyter Ascending
    Aug 11, 2015 · We have just finished releasing IPython 4.0, the last piece of the first release of Jupyter and IPython after The Big Split™. The quick way ...
  15. [15]
    JupyterCon NYC, August 2017 | by Project Jupyter
    Jan 26, 2017 · We'll be having our first Jupyter community conference, JupyterCon. It will take place in late August in the beautiful New York City.
  16. [16]
    Enjoy JupyterCon 2017 on YouTube - Jupyter Blog
    Nov 24, 2017 · JupyterCon 2017 drew over 700 attendees and offered a fantastic set of tutorials, talks and keynotes from all corners of the Jupyter ecosystem.
  17. [17]
    JupyterLab: the next generation of the Jupyter Notebook
    Jul 14, 2016 · JupyterLab is the next generation of Jupyter Notebook, offering an improved UI, flexible environment, and a plugin-based system for interactive ...Missing: key milestones 2017-2025
  18. [18]
    JupyterLab is Ready for Users - Jupyter Blog
    Feb 20, 2018 · We plan to release JupyterLab 1.0 later in 2018. The beta releases leading up to 1.0 will focus on stabilizing the extension development API, ...The Evolution Of The Jupyter... · Jupyterlab: Ready For Users · Get InvolvedMissing: official | Show results with:official
  19. [19]
    CZI: proposal information needed · Issue #99 · jupyter/governance
    May 3, 2021 · Include in this section any previous funding for these software projects ... Helmsley Charitable Trust, Gordon and Betty Moore Foundation, and the ...<|control11|><|separator|>
  20. [20]
    CZI Grant 2020 - jupyter-collaboration
    CZI Grant 2020#. We submitted an application for funding from the Chan Zuckerberg Initiative for their Essential Open Source Software for Science grant.
  21. [21]
    JupyterLite: Jupyter ❤️ WebAssembly ❤️ Python
    Jul 13, 2021 · ... JupyterLite can easily be configured for custom needs. It supports the new JupyterLab prebuilt extension system added to the 3.0 release.Missing: date | Show results with:date
  22. [22]
    Releases · jupyterlite/jupyterlite - GitHub
    0.7.0a6. (Full Changelog). Enhancements made. Update to JupyterLab 4.5.0a4 and Notebook 7.5.0a3 #1738 (@jtpio). Bugs fixed.
  23. [23]
    Generative AI in Jupyter
    Aug 2, 2023 · Jupyter AI version 1.0, for JupyterLab 3, and Jupyter AI 2.0, for JupyterLab 4, are now available as free and open source software. Jupyter AI ...Getting Started With Jupyter... · The Chat Interface, Your Ai... · Get Jason Weill's Stories In...
  24. [24]
    Announcing Jupyter Notebook 7
    Jul 26, 2023 · Announcing Jupyter Notebook 7 ; JupyterLab 4.1 and Notebook 7.1 are here · Feb 26, 2024 · 232 ; GNU Octave Meets JupyterLite: Compute Anywhere, ...
  25. [25]
    Update on Project Jupyter - NumFOCUS - Medium
    Oct 16, 2024 · Update on Project Jupyter Dear NumFOCUS Community, We are writing to inform you of an important change involving one of our projects.Missing: governance 2023-2025
  26. [26]
    LF Charities Welcomes Project Jupyter, Expanding Role in Data ...
    Oct 17, 2024 · Project Jupyter, an open source project creating software and standards that are widely used by millions for interactive computing, data science, and research, ...
  27. [27]
    Linux Foundation Announces Formation of the Jupyter Foundation
    Nov 21, 2024 · The Linux Foundation, the nonprofit organization enabling mass innovation through open source, announced the Jupyter Foundation to support Project Jupyter.
  28. [28]
    Project Jupyter's 2025 Executive Council Elections
    Mar 6, 2025 · Project Jupyter recently completed its 2025 Executive Council (EC) election, marking an important transition in its leadership.Who Are The Newly Elected Ec... · Get Project Jupyter's... · What This Means For...
  29. [29]
    The REST API — Jupyter Server documentation - Read the Docs
    The REST API#. An interactive version is available here. GET /api/#. Get the Jupyter Server version. This endpoint returns only the Jupyter Server version.
  30. [30]
  31. [31]
    Security in the Jupyter Server - Read the Docs
    When token authentication is enabled, the server uses a token to authenticate requests. This token can be provided to login to the server in three ways: in the ...Missing: CORS | Show results with:CORS
  32. [32]
    jupyter_server.base package — Jupyter Server documentation
    Add CORS headers, if defined. Now that current_user is async (jupyter-server 2.0), must be called at the end of prepare(), instead of in set_default_headers.
  33. [33]
    Kernels (Programming Languages) - Jupyter Documentation
    Kernels are programming language specific processes that run independently and interact with the Jupyter Applications and their user interfaces.<|control11|><|separator|>
  34. [34]
    Architecture — Jupyter Documentation 4.1.1 alpha documentation
    This page has information about the different architectural designs of core pieces in the Jupyter ecosystem. Some of these are individual projects, and others ...
  35. [35]
    Chapter 5 Jupyter Notebook ecosystem - GitHub Pages
    The Jupyter system supports over 100 programming languages (called “kernels” in the Jupyter ecosystem) including Python, Java, R, Julia, Matlab, Octave, Scheme ...
  36. [36]
    Jupyter for Data Science
    The purpose of this page is to highlight kernels and other projects that are central to the usage of Jupyter in data science.
  37. [37]
    Making kernels for Jupyter — jupyter_client 8.6.3 documentation
    A 'kernel' is a program that runs and introspects the user's code. IPython includes a kernel for Python code, and people have written kernels for several other ...
  38. [38]
    The Notebook file format — nbformat 5.3 documentation
    The official Jupyter Notebook format is defined with this JSON schema ... A code cell can have a variety of outputs (stream data or rich mime-type output).
  39. [39]
    Custom mimetypes (MIME types) - Jupyter Documentation
    A mimetype, also referred to as MIME type, identifies how the content that is being returned should be handled or used, based on type, by the application and ...Missing: outputs | Show results with:outputs
  40. [40]
    Installing Kernels - Jupyter Documentation
    This information gives a high-level view of using Jupyter Notebook with different programming languages (kernels).
  41. [41]
    kernelspec - discovering kernels — jupyter_client 5.1.0 documentation
    Returns a KernelSpec instance for the given kernel_name. Raises NoSuchKernel if the given kernel name is not found. Install a kernel spec by copying its ...
  42. [42]
    Messaging in Jupyter — jupyter_client 8.6.3 documentation
    This document explains the basic communications design and messaging specification for how Jupyter frontends and kernels communicate.
  43. [43]
    3.x Series — IPython 3.2.1 documentation
    Release 3.0¶. Released February 27, 2015. This is a really big release. Over 150 contributors, and almost 6000 commits in a bit under a year. Support for ...
  44. [44]
    Release 5.0.0 · jupyter/jupyter_client
    - **Release Date**: 20 Feb (year not specified in content).
  45. [45]
    Changes in Jupyter Client {#changelog} — jupyter_client 8.6.3 ...
    This release is primarily focused on improving asyncio support, while aiming to have minimal API changes.
  46. [46]
    History — IPython 9.6.0 documentation
    Sep 29, 2025 · Origins. IPython was starting in 2001 by Fernando Perez while he was a graduate student at the University of Colorado, Boulder. IPython as we ...Missing: Jupyter Notebook 2011
  47. [47]
    Introduction - Jupyter Notebook Documentation - Read the Docs
    Jupyter Notebook offers fast, interactive new ways to prototype and explain your code, explore and visualize your data, and share your ideas with others.
  48. [48]
    Extensions — JupyterLab 4.4.10 documentation
    A JupyterLab extension contains JavaScript that is installed into JupyterLab and run in the browser. An extension contains one or more plugins that extend ...
  49. [49]
    Real Time Collaboration — JupyterLab 4.4.10 documentation
    - **Real-Time Collaboration in JupyterLab**: Available from JupyterLab v4.
  50. [50]
  51. [51]
    Language Server Protocol support — JupyterLab 4.4.10 documentation
    ### Summary of LSP Support for Code Completion in JupyterLab
  52. [52]
    jupyter-lsp/jupyterlab-lsp - GitHub
    Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol. jupyterlab-lsp ...
  53. [53]
    Migrating — Jupyter Notebook 7.4.7 documentation
    ### Summary of Migration from Notebook to JupyterLab and Notebook 7.0
  54. [54]
    jupyterlite/jupyterlite: Wasm powered Jupyter running in the browser
    JupyterLite is a JupyterLab distribution that runs entirely in the browser built from the ground-up using JupyterLab components and extensions.
  55. [55]
    Related Projects — Version 0.29.0 - Pyodide
    JupyterLite is a JupyterLab distribution that runs entirely in the browser, based on Pyodide. futurecoder is an interactive Python course running on Pyodide ...
  56. [56]
    JupyterLite: Jupyter ❤️ WebAssembly & Python - Show and Tell
    Jul 13, 2021 · JupyterLite is a JupyterLab distribution that runs entirely in the web browser, backed by in-browser language kernels.
  57. [57]
    voila-dashboards/voila: Voilà turns Jupyter notebooks into ... - GitHub
    Voilà provides a JupyterLab extension that displays a Voilà preview of your Notebook in a side-pane. Starting with JupyterLab 3.0, the extension is ...Missing: 2018 | Show results with:2018
  58. [58]
    Notebooks on your desktop - nteract: write your next code-driven story.
    Explore computing creatively. All the power of Jupyter notebooks, wrapped in native desktop goodness. Try the nteract desktop app for Linux. Download ...
  59. [59]
    Building on Top of Jupyter | by Kyle Kelley - nteract
    Nov 30, 2016 · nteract is a desktop-based interactive computing environment. This publication contains fun engineering blog posts, announcements from the ...
  60. [60]
    JupyterLab Desktop App now available! | by Mehmet Bektas
    Sep 22, 2021 · JupyterLab Desktop App now available! We are pleased to announce the release of desktop application for JupyterLab!Missing: official | Show results with:official
  61. [61]
    JupyterLab desktop application, based on Electron. - GitHub
    JupyterLab Desktop is the cross-platform desktop application for JupyterLab. It is the quickest and easiest way to get started with Jupyter notebooks on your ...
  62. [62]
    Binder
    With Binder, open those notebooks in an executable environment, making your code immediately reproducible by anyone, anywhere.Missing: adaptations | Show results with:adaptations
  63. [63]
    The Binder Project - Jupyter Notebook
    The Binder project offers an easy place to share computing environments to everyone. It allows users to specify custom environments and share them with a ...Missing: mobile | Show results with:mobile
  64. [64]
    The Notebook file format — nbformat 5.10 documentation
    The official Jupyter Notebook format is defined with this JSON schema, which is used by Jupyter tools to validate notebooks.Cell Types · Code Cell Outputs · Metadata
  65. [65]
    jupyter/nbformat: Reference implementation of the Jupyter Notebook ...
    nbformat contains the reference implementation of the Jupyter Notebook format, and Python APIs for working with notebooks.Jupyter/nbformat · Nbformat: Jupyter Notebook... · About The Jupyter...
  66. [66]
  67. [67]
    Changes to notebook file formats 4.0 and 4.1. · Issue #170 - GitHub
    Mar 26, 2020 · We can retroactively update notebook file formats 4.0 and 4.1 to include the change in 4.2 allowing arbitrary JSON in mimebundles. This is done ...
  68. [68]
    Built-in magic commands — IPython 9.7.0 documentation
    ### Summary of Cell Magics: %matplotlib inline in Jupyter/IPython
  69. [69]
    ipywidgets 5.0 | by Project Jupyter
    Apr 22, 2016 · On April 19, 2016, we released ipywidgets 5.0. The ipywidgets package provides interactive HTML & JavaScript widgets (such as sliders, ...
  70. [70]
    Interface Customization — JupyterLab 4.4.10 documentation
    ### Summary of Customization in JupyterLab: Themes and Keyboard Shortcuts
  71. [71]
    Security in the Jupyter notebook server
    IPython 2.0 introduced a security model to prevent execution of untrusted code without explicit user input. ... After loading the untrusted notebook, with File / ...Missing: sandboxing | Show results with:sandboxing
  72. [72]
  73. [73]
    Working with non-code files - GitHub Docs
    When you add Jupyter Notebook or IPython Notebook files with a .ipynb extension on GitHub, they will render as static HTML files in your repository. The ...Rendering and diffing images · 3D File Viewer · Rendering differences in prose...<|control11|><|separator|>
  74. [74]
    nbviewer
    - **What is nbviewer?**: nbviewer is a tool for sharing static views of Jupyter Notebooks online. Users can input a notebook’s URL to render it in a readable format.
  75. [75]
  76. [76]
    Jupyter Book - Jupyter Book
    Jupyter Book allows you to create documents and knowledge bases that are reusable, reproducible, and interactive. Technical projects. MyST Document Engine.Contribute to Jupyter Book · Cite Jupyter Book · Advanced Jupyter Book Usage
  77. [77]
    Python Libraries for Data Analysis: Essential Tools for Data Scientists
    Aug 13, 2025 · Explore some of the most popular Python libraries for data analysis, including Pandas, NumPy, Matplotlib, Seaborn, SciPy, Scikit-learn, Statsmodels, Plotly, ...<|separator|>
  78. [78]
    Astropy
    The Astropy Project is a community effort to develop a common core package for Astronomy in Python and foster an ecosystem of interoperable astronomy packages.About · Acknowledging & Citing · Get Help · Contribute
  79. [79]
    Python Notebooks - HEASARC - NASA
    We have created a number of Python notebooks showing concrete examples of how to query archives using VO protocols. We use the Astropy-affiliated PyVO ...
  80. [80]
    ALMA Science Archive Notebooks
    This page contains Jupyter Notebooks to programatically access the ALMA Science Archive. The notebooks interact through Virtual Observatory standards.
  81. [81]
    The Biopython Structural Bioinformatics FAQ
    You can however interactively view Biopython structural entities in a Jupyter notebook using nglview: import nglview as nv view = nv.show_biopython ...
  82. [82]
    NASA-Openscapes - GitHub
    A tutorial book of workflows for research using NASA EarthData in the Cloud created by the NASA-Openscapes team. Jupyter Notebook 97 39.
  83. [83]
    [PDF] Notebooks and Computing Workflows - CERN Indico
    Kale is a Jupyter extension to ease moving from notebooks to pipelines. Early access almost ready for a CERN instance. Page 25. Quick Demo. Page 26. Summary.
  84. [84]
    C++ in Jupyter — Interpreting C++ in the Web | by Anutosh Bhat
    Jun 19, 2025 · At CERN, the C++ programming language has ... These interactive workflows are where the Jupyter stack shines compared to traditional IDEs.
  85. [85]
    Practical Computational Reproducibility in the Life Sciences - NIH
    Simply providing the output of “conda env export” with a manuscript allows anyone to easily obtain the exact version of the software used, as well as all its ...
  86. [86]
    Dataset of A Large-scale Study about Quality and Reproducibility of ...
    Mar 13, 2019 · The self-documenting aspects and the ability to reproduce results have been touted as significant benefits of Jupyter Notebooks.
  87. [87]
    Using Jupyter for reproducible scientific workflows - arXiv
    Feb 18, 2021 · In this work, we report two case studies - one in computational magnetism and another in computational mathematics - where domain-specific software was exposed ...<|separator|>
  88. [88]
    Computational reproducibility of Jupyter notebooks from biomedical ...
    Jan 11, 2024 · Out of 27,271 Jupyter notebooks from 2,660 GitHub repositories associated with 3,467 publications, 22,578 notebooks were written in Python, ...Introduction · Methods · Results · Discussion
  89. [89]
    PyCharm vs. Jupyter Notebook - The JetBrains Blog
    Sep 24, 2024 · According to our Developer Ecosystem Survey 2023, at least 35% of data professionals use Jupyter notebooks. Furthermore, over 40% of these users ...
  90. [90]
    Chapter 2 Why we use Jupyter notebooks | Teaching and Learning ...
    We believe that incorporating Jupyter notebooks in our teaching has allowed us to improve students' understanding of course content, increase student ...
  91. [91]
    Interactive notebooks for achieving learning outcomes in a graduate ...
    May 16, 2023 · This research investigates the impact of employing a web-based interactive programming tool, Jupyter notebooks, on supporting deeper conceptual understanding.
  92. [92]
    An introduction to Jupyter notebooks : #ALTC Blog
    Aug 9, 2019 · Jupyter is an open source web application that allows you to create live editable documents – notebooks – that allow you to run code whilst also containing ...
  93. [93]
    Benefits and Pitfalls of Jupyter Notebooks in the Classroom
    In this article, we propose the utilization of Jupyter Notebooks, renowned for their versatility in combining code, visualizations, and explanations, as a ...
  94. [94]
    How to Use Jupyter Notebooks: The Ultimate Guide - DataCamp
    Mar 10, 2023 · Jupyter Notebooks are documents for technical and data science content. This tutorial provides an overview of Jupyter notebooks, their components, and how to ...Overview of notebooks · Types of Jupyter Notebook · Components of a notebook
  95. [95]
    First Steps in Python with Jupyter Notebooks - Coursera
    In this course, you'll set up a powerful development environment, master essential Python syntax, and learn to leverage GitHub for seamless collaboration.
  96. [96]
    Chapter 7 Usage case studies | Teaching and Learning with Jupyter
    7.1 Jupyter notebooks in support of scaling for large enrollments. 7.1.1 Supporting large enrollment courses at UC Berkeley. The University of California at ...
  97. [97]
    nbgrader — nbgrader 0.9.5 documentation
    nbgrader is a tool that facilitates creating and grading assignments in the Jupyter notebook. It allows instructors to easily create notebook-based assignments.Creating and grading... · Using nbgrader with JupyterHub · Highlights · 0.8.x
  98. [98]
    JupyterHub — JupyterHub documentation
    It is a multi-user Hub that spawns, manages, and proxies multiple instances of the single-user Jupyter notebook server.Services · Reference · Tutorials · 1.0.0
  99. [99]
    UW-IT JupyterHub for Teaching Overview
    JupyterHub for Teaching gives users access to Jupyter Notebook environments (computational environments and resources) without the hassle of installation ...
  100. [100]
    Jupyter Notebooks and Institutional Repositories: A Landscape ...
    Dec 4, 2023 · This paper explores the landscape of Jupyter notebooks today, and focuses on the opportunities and challenges related to bringing Jupyter Notebooks into ...
  101. [101]
    [PDF] Jupyter Book as an open online teaching environment in the ...
    May 16, 2024 · In 2023 and 2024, students were asked to take part in the questionnaire during dedicated timeslots directly after the Geo-SfM. 190 module was ...
  102. [102]
    Beyond Interactive: Notebook Innovation at Netflix
    Aug 16, 2018 · Project Jupyter began in 2014 with a goal of creating a consistent set of open-source tools for scientific research, reproducible workflows, ...
  103. [103]
    New solution template simplifies Jupyterhub on GKE setup
    Jan 10, 2024 · Jupyterhub is a powerful, multi-tenant server-based web application that allows users to interact with and collaborate on Jupyter notebooks.<|separator|>
  104. [104]
    Zero to JupyterHub with Kubernetes — Zero to JupyterHub with ...
    This guide helps set up JupyterHub on Kubernetes, using cloud providers, Kubernetes, and Helm, starting from a working Kubernetes and Helm installation.Setup Kubernetes · Setup JupyterHub · Customization Guide · Installing JupyterHub
  105. [105]
    Machine Learning with Python, Jupyter, KSQL and TensorFlow
    Feb 6, 2019 · Data scientists use tools like Jupyter Notebooks to analyze, transform, enrich, filter and process data. The preprocessed data is then used to ...
  106. [106]
    ipydatagrid adds interactive data grids to the Jupyter ecosystem
    Dec 8, 2021 · ipydatagrid is a data grid Jupyter-widget. A data grid is essentially a grid of cells, much like Microsoft Excel, that holds tabular information.
  107. [107]
    Getting started with Watson Studio Runtimes on IBM Software Hub
    With Watson Studio Runtimes, you can launch a Jupyter Notebook editor, Jupyterlab IDE, or Visual Studio Code and run notebooks and experiments.Missing: Commercial Bloomberg
  108. [108]
    Data Science Statistics 2025: Facts, Growth, Trends & Market Size
    Jul 14, 2025 · 84. 69% of data scientists use Jupyter notebooks for exploratory data analysis, 68% for experiments on data/data querying, 64% for visualization ...
  109. [109]
    Open Source Growth at Anaconda in 2025: Building the ...
    Apr 4, 2025 · Anaconda has invested tens of millions of dollars in open source innovation through employee time, direct donations, event sponsorships, and more.Jupyter: Advancing The... · Conda: The Foundation For... · Beeware: Write Once, Deploy...