JupyterCon 2023

IPyflow: Supercharging Jupyter with Dataflow-Awareness
05-10, 12:00–12:30 (Europe/Paris), Louis Armand 2

In this talk, I'll introduce IPyflow, which is my stab at addressing the issue of statefulness in Jupyter notebooks. IPyflow is a Jupyter kernel designed from the ground up to annotate each symbol appearing in program text with metadata pertaining to how it relates to every other symbol.

This dependency graph is then leveraged to provide several interesting features, including:
- execution suggestions, for keeping the notebook state in sync with the code;
- dynamic backward slicing, to show the minimal code needed to reconstruct each symbol; and
- dynamic forward slicing, used to enable reactive execution.

Finally, I will also discuss IPyflow's reactive syntax extensions, which allow for opt-in reactivity at the granularity of individual symbols, as well as its interoperability with other libraries and frameworks such as ipywidgets and stickyland. I'll end the talk by showing how IPyflow can be used with the aforementioned projects to build fully reactive and interactive dashboards on top of JupyterLab.

See also:

Stephen Macke is an engineer at Databricks working on notebook technologies. He completed his PhD at the University of Illinois, Urbana-Champaign in 2020, and has been obsessing about reactivity and state management in notebooks for way too long.