← Projects

May 2026 · Creator

pyobservablejs

pyobservablejs brings Observable’s reactive cells and browser libraries into Python notebooks. Python supplies the data, while JavaScript inputs and charts update together in the browser.

pyobservablejs project image

I wanted to keep Python’s data tools and Observable’s way of composing an interface. A slider, a transformation, and a chart become cells connected by named values, using the browser’s JavaScript libraries and HTML directly.

Notebook Kit, Observable’s notebook runtime, runs those cells and recomputes their dependents when an input changes. Python can embed the whole notebook or selected cells, update its data, and read results back.

Filter four records

Adjust the range control to filter the records and redraw the bars. This interaction stays in the browser after Python supplies the data.

Built with

Platforms & Runtimes

Frontend & Visualization