Jupyter Blog
News, release announcements, and community stories from Project Jupyter
Every post, newest first; the archive lists them chronologically by year.

Notebooks-On-Demand (Nod): A JupyterLab Extension for a Notebook Anywhere

JupyterHub 6.0

Mark Your Calendars: Jupyter Day 2026 is Coming to San Jose!

A Robotics Workbench for JupyterCAD

What you told us: results from the 2026 Jupyter User Experience and Product Enhancement Survey

JupyterGIS 0.16: New visualization capabilities, collaborative Story Maps, and more

Positron Server available for academic use via JupyterHub

JupyterLite 0.8 is released! 🎉

Navigating the Post-Workshop Fog: a Path to Myst

2026 Jupyter Community Call For Funding Proposals

JupyterLab 4.6 and Notebook 7.6 are out!

Congratulations, Distinguished Contributors!

Announcing jupyter-builder: A Standalone Build System for JupyterLab Extensions
Jupyter User Survey

Becoming the new JupyterHub and Jupyter Book community manager

Catching Jupyter-specific bugs before CI does: announcing jupyter eslint plugin

A User’s Journey with Plugin Playground: From First Idea to Installable JupyterLab Extension.
Our new Jupyter Foundation Community Manager

nb-cli: A Command-Line Interface for AI Agents and Notebook Automation
A Jupyter Workshop: Demystifying MyST Markdown in Education

Exploring Petabytes of the Night Sky — Jupyter Notebooks at NOIRLab’s Astro Data Lab Science Platform

The MyST AnyWidget Directive

Better sharing UX with nbgitpuller and contextual error handling

What’s New in MyST Markdown 1.8.2

Jupyter Security Sprint March 31st

700 JupyterLab 4 Extensions!

Call for applications: Community Manager for JupyterHub and Jupyter Book

Expanding Geospatial Workflows in JupyterGIS: STAC Browsing and Story Maps

Jupyter Community Call: February 2026

JupyterLite Officially Joins Project Jupyter!

Instantly view Parquet files in JupyterLab with Arbalister

JupyterLite 0.7 is released! 🎉

JupyterLab 4.5 and Notebook 7.5 are available!
Jupyter Community Workshops: Early 2026
Scaling “Maintainer Intuition” with Pull Request Triage Boards

Hey Jovyans, we’d love for you to join us on our final community call of the year!

Announcing our first Jupyter Community Funded Proposals

GNU Octave Meets JupyterLite: Compute Anywhere, Anytime!

Your Ideas, Our Support: Jupyter Community Call For Funding Proposals
Jupyter Community Workshops Are Back!

Jupyter Community Call: September 2025

C++ in Jupyter — Interpreting C++ in the Web

JupyterLite 0.6.0 is released! 🎉

Jupyter Community Call: June 2025

JupyterLab 4.4 and Notebook 7.4 are available!

Congratulations, Distinguished Contributors!

Exploring Open Access Art Using the Deno Jupyter Kernel

JupyterCon 2025!
Project Jupyter’s 2025 Executive Council Elections

Simplifying and speeding up Binder builds with BuildKit

R in the Browser: Announcing Our WebAssembly Distribution

Collaborative editing for GIS workflows with Jupyter and QGIS

Building AI Agents for JupyterLab using Notebook Intelligence

Announcing JupyterCAD 3.0

Join JupyterHub on Zulip chat!
Jupyter Community Call: February 2025

Introducing Notebook Intelligence!

Build your Jupyter dashboard using Solara

JupyterLab 4.3 and Notebook 7.3 are available!

JupyterLite Terminal

Automate your releases with the Jupyter Releaser 🚀

Project Jupyter joins LF Charities
November 2024 Jupyter Community Call

Exploring a Document’s Timeline in JupyterLab

Interactive Mapping with ipyopenlayers

Announcing the 2023 Jupyter Distinguished Contributor Award Recipients

Community Building Report: Project Jupyter

ipydatagrid is now part of Project Jupyter

JupyterGIS

JupyterLab 4.2 and Notebook 7.2 are available!
Jupyter recognized as “Champion of Open Science” by U.S. White House
CUDA enabled Jupyter Docker Images

Make your Pandas or Polars DataFrames Interactive with ITables 2.0

JupyterLab Desktop UI Modes

Python environment management using JupyterLab Desktop CLI

JupyterLab 4.1 and Notebook 7.1 are here 🎉

Python environment management in JupyterLab Desktop
JupyterLab 3 end of maintenance

The Jupytext Menu is back!

Meet Xeus-R: a future-proof Jupyter kernel for R

Jupyter Media Strategy & Social Media Update
Recent keyboard navigation improvements in Jupyter
Open Community Call

And Voici!

Plug your application into the Jupyter world

Voilà 0.5.0 : Homecoming

Bringing Modern JavaScript to the Jupyter Notebook

Generative AI in Jupyter

Desktop GIS software in the cloud with JupyterHub: A QGreenland workshop success story

European Commission Funds Jupyter Bug Bounty Program

Announcing Jupyter Notebook 7

🎉 JupyterCon 2023 recordings now live on YouTube! 🎉

anywidget: Jupyter Widgets Made Easy
From intern to mentor

A theme editor for JupyterLab

JupyterLab 4.0 is Here

Congratulations, Distinguished Contributors!

Collaborative CAD in JupyterLab

Introducing “Learn Python with Jupyter”
Mybinder.org reducing capacity

Jupyter Notebook format workshop outcomes

Accurately counting Daily, Weekly & Monthly active users on JupyterHub

Embed interactive itkwidgets 3D renderings into JupyterLite deployments
Online Collaboration Café launch: JupyterHub team meetings to become more collaborative spaces!

Improving the accessibility of Jupyter

JupyterCon 2023 is just around the corner, and it promises to be an exciting and action-packed…

Introducing the new JupyterLab Desktop!

Report on the JupyterLite Community Workshop 💡

JupyterCon 2023 keynotes

Announcing a New Jupyter Governance Model and Our First Executive Council

A Jupyter kernel for GNU Octave

Introducing Jupyter Scheduler

JupyterLab Desktop — 2022 recap
Jupyter Community Workshop: The notebook file format

Introducing JupyterHub’s Outreachy interns! — December 2022 Cohort
Jupyter Server 2.0 is released!

Jupyter Community Workshop: Jupyter for Education

Report on the Jupyter Community Workshop

MyBinder @ OVHcloud

Jupyter Community Workshop: JupyterLite

JupyterCon is back in 2023

Jupyter Community Workshops Update — Current Round Review & Sneak Peek into Round 4

Accelerating JupyterLab

Jupyter Community Workshop: The Future of Jupyter Widgets

Upgrading Nbgrader

Jupyter Notebook 6.5.0 Release Candidate

Packaging for Jupyter in 2022

Visual programming in JupyterLab with Blockly

Mamba meets JupyterLite
Requiring 2FA for Jupyter GitHub Organizations

Jupyter Community Workshops: Call for Proposals

Securely pushing to GitHub from a JupyterHub with gh-scoped-creds

Jupyter Events Update

Inspector JupyterLab

Jupyter Accessibility Workshops Wrap Up
Please don’t disable authentication in Jupyter servers

Congratulations, Distinguished Contributors!

Jupyter Everywhere

Join us for the Jupyter Accessibility Workshops (Part 2)

Release of IPython 8.0

Join us for the Jupyter Accessibility Workshops (Part 1)

Jupyter Community 2021 Update

Jupyter Games

Need for Speed: Voilà edition
JupyterHub 2.0

IPython Parallel in 2021

How I automated authorised cloud deployments from Pull Requests with GitHub Actions

Xeus-Lite

CZI awards three EOSS grants to Jupyter community members

Looking at notebooks from a new perspective

Xeus 2.0

From Jupyter to the Moon

JupyterLab Desktop App now available!
Trusted CI Cybersecurity Engagement with Jupyter
Community Note

Ploomber: Maintainable and Collaborative Pipelines in Jupyter

Jupyter’s role in #ChaosDB
CVE-2021–32797 and CVE-2021–32798 Remote Code execution in JupyterLab and Jupyter Notebook

Build a Jupyter Widget with React and TypeScript

JupyterLite: Jupyter ❤️ WebAssembly ❤️ Python

Setting up a “Production Ready” TLJH deployment

How we made Jupyter Notebooks collaborative with Yjs

RetroLab — A JupyterLab distribution with a retro look and feel

Congratulations, Distinguished Contributors!

Enabling the JupyterLab debugger with ipykernel

nbterm: Jupyter Notebooks in the terminal

Lessons learned from Jupyter’s Contributor in Residence pilot

Abracadabra! Bringing the magics to xeus-python

Genomic data visualization in Jupyter

An SQL solution for Jupyter

A Curiously Recurring Widget Library

Robotic Process Automation with JupyterLab

Dashboarding with JupyterLab 3

JupyterLab 3.0 is released!

Survey — JupyterLab and beyond

A C++ API for Vega-Lite

Congratulations, Distinguished Contributors!

Reusable code snippets in JupyterLab

ipygany: Jupyter into the third dimension

Tema Okun

Benjamin Ragan-Kelley

Omoju Miller

The templating system of nbconvert 6

Jupyter meets the Earth: EarthCube Community Meeting

Lucy D’Agostino McGowan

Announcing the new Jupyter Book

JupyterLab, the Cloud Robotics Command Station

Elyra reaches 1.0.0

Juan Klopper

Jeremy Howard

Anima Anandkumar

SlicerJupyter: a 3D Slicer kernel for interactive publications

JupyterCon Online: more than a conference

A Jupyter kernel for SQLite

Plasma: A learning platform powered by Jupyter

The Jupyter Contributor In Residence, update 1

Interactive Graph Visualization in Jupyter with ipycytoscape

A visual debugger for Jupyter

The superheroes and the magic wand
nbviewer has a new host: OVHcloud

Jupyter Community Workshops 2019 Year in Review

Report on the Jupyter Community Workshop on Dashboarding

JupyterCon 2020 is a go!

Xeus is now a Jupyter subproject

A 2019 retrospective from the Binder Project

Voilà is now a Jupyter subproject

Connect to a JupyterHub from Visual Studio Code

The JupyterHub and Binder Contributor in Residence!

Jupyter Community Workshops: Call for Proposals for Jan-Aug 2020

Configure your dashboards with Voilà gridstack template

A slideshow template for Voilà apps

ipycanvas: A Python Canvas for Jupyter

Diving into Leadership to Build Push-Button Code

Field Report on the Kernel Community Workshop

South America Jupyter Community Workshop

Interactive GIS in Jupyter with ipyleaflet

Jupyter meets the Earth

National Scale Interactive Computing

Building a Calculator Jupyter Kernel

Jupyter for Science User Facilities and High Performance Computing

A Gallery of Voilà Examples

Introducing templates for Jupyter widgets layouts

The International Binder Federation

Binder + Zenodo: A how-to guide

99 ways to extend the Jupyter ecosystem

And voilà!

Integrating output in documentation with jupyter-sphinx
Jupyter Community Workshop: South America
University of Edinburgh Jupyter Community nbgrader Hackathon

Announcing JupyterHub 1.0
Jupyter Community Workshop: Jupyter Server Design and Roadmap Workshop

BinderHub is out of Beta!

ROS @ Jupyter

DevOps Intelligence

Jupyter Community Workshop: Building upon the Jupyter Kernel Protocol
Kellie Ottoboni Receives Award for Post-Election Auditing Notebook
Open Redirect Vulnerability in Jupyter notebook, JupyterHub
Jupyter notebook XSSI security fix

Introducing TraefikProxy — a scalable and highly available proxy for JupyterHub

Simpler authentication for small scale JupyterHubs with NativeAuthenticator

Zero to JupyterHub helm chart 0.8

Jupyter Community Workshop: Dashboarding with Project Jupyter
Jupyter Conference Advisory Committee
Jupyter Community Workshop: Jupyter for Scientific User Facilities and High-Performance Computing

Jupyter notebooks for post-election audits
Jupyter Community Workshops

A new Python kernel for Jupyter

Teaching and Learning with Jupyter

Introducing repo2docker
The Future of JupyterCon, 2019 and Beyond

elife sprint: Integrating Stencila and Binder

Jupyter Hackathon Series in Hawaii

Outreachy & Jupyter: Supporting diversity in open communities
Jupyter Notebook security fixes
Jupyter Community Workshops: Call for Proposals

Contribute to your first open source project

On-demand Notebooks with JupyterHub, Jupyter Enterprise Gateway and Kubernetes

Deploying JupyterHub with Kubernetes on OpenStack

JupyterDay in the Triangle

IPython 7.0, Async REPL

Jupyter QtConsole 4.4

Introducing Jupyter Enterprise Gateway

Synopsis: JupyterCon 2018 Education Track
Deadline Extension: Jupyter Community Workshops
Security fix for Jupyter Notebook
Jupyter Community Workshops
JupyterHub 0.9

I Python, You R, We Julia
Jupyter Notebook 5.5.0

Jupyter receives the ACM Software System Award

Interpreted C++ for GIS with Jupyter

JupyterCon 2018: Registration Open

We Analyzed 1 Million Jupyter Notebooks — Now You Can Too [Guest Post]

JupyterCon 2018, NYC August 21–25

Reproducible Data Dependencies for Python [Guest Post]

Authoring Custom Jupyter Widgets

A Diagram Editor for JupyterLab

JupyterLab is Ready for Users
Security fix for JupyterHub GitLab OAuthenticator Group Whitelists

Jupyter Pop-Up, March 21, Boston

The Atlanta Jupyter User Group is excited to announce Early Bird Tickets and the Call for Proposals…

JupyterCon 2018: Call For Proposal
Jupyter Notebook 5.3.0

Announcing the JupyterHub Helm Chart v0.5
Incident Report: Jupyter services down

Binder 2.0, a Tech Guide

Interactive Workflows for C++ with Jupyter
Public Notebooks and Security
Enjoy JupyterCon 2017 on YouTube

Congratulations to the LIGO and VIRGO Collaborations from Project Jupyter
Jupyter Notebook 5.2.0
JupyterHub 0.8
Release of IPython 5.5 and 6.2
Jupyter Notebook 5.1.0
JupyterCon NYC: August 22nd-25th
Introducing the Helm Chart for JupyterHub Deployment with Kubernetes
Release of IPython 5.4, 6.1, and rlipython.

Release of IPython 6.0

Jupyter Notebook 5.0
IBM Brings Jupyter and Spark to the Mainframe

nbviewer and GitHub’s rate limit
Release of ipywidgets 6.0
The Continued Existence of the Emacs IPython Notebook
Openness, Diversity and Dignity: a Foundation for Global Collaboration

JupyterCon NYC, August 2017

Security release: Jupyter Notebook 4.3.1

JupyterDay Paris

JupyterDay Hawaii 2016
ipywidget security release
Notebook 4.2.2: Security fix

JupyterDay Atlanta 2016

JupyterLab: the next generation of the Jupyter Notebook

Release of IPython 5.0
ipywidgets 5.0
Notebook 4.2
Jupyter Kernel Gateway
Speakers for JupyterDays Boston, March 17-18
JupyterDays Boston 2016

Notebook 4.1 release
Jupyter Notebook User Experience Survey
We are hiring a Project Manager at UC Berkeley
Continuum Analytics donates $100k to Project Jupyter

JupyterDay Chicago 2016
Project Jupyter is hiring two postdoctoral fellows @ UC Berkeley

JupyterDay NYC
Jupyter Ascending
Project Jupyter: Computational Narratives as the Engine of Collaborative Data Science

New funding for Jupyter

IPython 3.2 released

Rendering Notebooks on GitHub

The Big Split™
Welcome to Jupyter






