Connections and Synchronizations Between Notebooks

Hello. I recently saw a post on LinkedIn which indicated that AI-enhanced IDEs can enable developers to be able to hover over parts of flowchart diagrams to produce popups or tooltips and to highlight selections of content in other components, e.g., those displaying source code. This post showed how requirements documents, diagrams, and source code could all be interconnected and synchronized.

Such connections and synchronizations could enable multiple team members with different project responsibilities to efficiently navigate the contents of multiple notebooks. There would also be an increased educational benefit for students and trainees exploring projects’ collections of meaningfully connected notebooks.

Today, hyperlinking to and navigating within notebooks is possible making use of hypertext and markdown.

Some new ideas for Jupyter notebooks include:

  1. Synchronized content highlighting and selection: Developers could hover over, highlight, and click in notebooks (e.g., upon diagrams) to open other notebooks, to navigate opened notebooks to content, and to highlight such content. Alternatively, developers could select portions of content in notebooks to highlight relevant content in notebooks displaying diagrams.
    1. Beyond moving synchronized notebook documents to anchor positions in them, individual components could receive and then interpret synchronization events, these perhaps containing URL fragments, to customize their responses and behavior, e.g., to present visualizations of highlighted portions of diagrammatic content.
  2. Scroll effects: Developers could opt into scrolling through one notebook and watching the displayed views of multiple other synchronized notebooks change as a result as waypoints entered and exited display.
  3. Multi-links: In theory, developers could click upon advanced hyperlinks in one notebook, e.g., project documentation or a requirements document, to synchronize the displayed views of multiple other notebooks.

Thank you. Is there is any interest in enabling these or any other, more intricate, connections and synchronizations between multiple notebooks?

There is some discussion around this in Fragment Identification Syntax for Jupyter (linking to cells in document) · Issue #317 · jupyter/nbformat · GitHub

I think jupyterlab-myst might support some of the hover effects.

1 Like