Updated June 2026 21 hours of live training delivered over 3 days. Python and JavaScript/TypeScript developers who want to extend JupyterLab and Notebook 7 with customized interactive widgets, from leveraging built-in widgets to building, documenting, and publishing their own. The Jupyter Widgets Programming course teaches Python and JavaScript/TypeScript developers how to extend JupyterLab and Notebook 7 with customized widgets. The course starts with the high-level concepts of creating and running custom widgets. Then, the course dives into low-level concepts and features that power widgets and how to employ those concepts and features to create new widgets. This class can be taught with JavaScript or TypeScript. Comprehensive courseware is distributed online at the start of class. All students receive a downloadable MP4 recording of the training. Students will need a free, personal GitHub account to access the courseware. Students will need permission to install Python and Visual Studio Code on their computers. Also, students will need permission to install Python packages and Visual Studio Code extensions. If students are unable to configure a local environment, a cloud-based environment can be provided.Jupyter Widgets Programming
Class Duration
Student Prerequisites
Target Audience
Description
Learning Outcomes
Training Materials
Software Requirements
Training Topics
Extending JupyterLab
Setup Development Environment
Built-In Widgets
Widget Events
Widget Presentation
Asynchronous Widgets
AnyWidget (the modern path)
model.set / model.onLow-Level Understanding of Widgets
Publishing a Widget