Skip to content

FE-1557: Prototype notebook navigation and graph explorations - #9452

Draft
kube wants to merge 6 commits into
claude/fe-1509-notebook-viewfrom
claude/fe-1557-notebook-prototypes
Draft

FE-1557: Prototype notebook navigation and graph explorations#9452
kube wants to merge 6 commits into
claude/fe-1509-notebook-viewfrom
claude/fe-1557-notebook-prototypes

Conversation

@kube

@kube kube commented Aug 30, 2026

Copy link
Copy Markdown
Collaborator

🌟 Purpose

Prototype five navigation and graph-visualization ideas on top of the Notebook view, each borrowed from a pattern proven elsewhere (Jupyter/Linear palettes, IDE jump lists, Vimium hints, VS Code peek, overview+detail graph cameras). Stacked on #9351.

🔗 Related links

🔍 What does this change?

One prototype per commit, so they can be judged (and dropped) independently:

  • Command palette: ⌘K opens a fuzzy palette over every cell name plus view commands (cell order, kind filters, expand/collapse all, graph focus mode). Enter jumps or runs; jumping reveals a hidden kind and lands in the jump history.
  • Jump history: reference jumps (arc place, explorer row, palette result) are remembered; ‹ › toolbar buttons and ⌥←/⌥→ go back and forward. Plain arrow moves are not recorded.
  • Hint jump: f labels every visible row with home-row letter chips; typing a label jumps to the row. Uniform-length labels, so no label is a prefix of another.
  • Peek cards: hovering or focusing any reference (arc place, explorer row, graph node) previews the target cell's kind, summary, and dependent counts without navigating. Wired by delegation over a data-peek-cell attribute.
  • Graph camera: the net diagram zooms toward the cursor on scroll, pans by background drag, refits on double-click, and carries an aspect-correct minimap whose window can be pressed or dragged to re-centre. Labels hide below half zoom.
  • The design rationale, per-prototype architecture, follow-up ideas, and research sources are documented in a new arch-docs page (content/notebook/navigation-explorations.mdx); the user guide's Notebook page gains a "Getting around" section.

Pre-Merge Checklist 🚀

🚢 Has this modified a publishable library?

  • This PR modifies a publishable library, and I have added a changeset

📜 Does this require a change to the docs?

  • The docs will be updated as part of this PR (docs/notebook-view.md, arch-docs exploration page)

🕸️ Does this require a change to the Turbo Graph?

  • This PR does not affect the execution graph

🐾 Next steps

  • Palette recents and scoped sub-menus; hint labels on body parts; hover-neighbourhood dimming in the graph — listed in the exploration page's "What next".

🛡 What tests cover this?

  • New unit tests: use-jump-history.test.ts (back/forward/fork semantics), hint-jump.test.ts (label generation, prefix-freedom, matching), net-graph-viewport.test.ts (fit, cursor-anchored zoom, clamps, minimap window round-trips).
  • Existing notebook suites unchanged and green.

❓ How to test this?

  1. yarn workspace @hashintel/petrinaut dev, open the full-editor story, enable Notebook view in the viewport settings, switch to Notebook.
  2. Press ⌘K, type a cell name fragment, Enter — then ⌥← to come back.
  3. Press f in the list and type a chip's letters.
  4. Expand a transition and hover an arc's place name; move keyboard focus onto the same cell.
  5. In the graph: scroll to zoom, drag the background, double-click to refit, drag the minimap.

📹 Demo

Screenshots pending (placeholder — to be replaced with palette, hint chips, peek card, and minimap captures).

🤖 Generated with Claude Code

@kube kube self-assigned this Aug 30, 2026
@vercel

vercel Bot commented Aug 30, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hash Ready Ready Preview Aug 30, 2026 2:04pm
petrinaut Ready Ready Preview Aug 30, 2026 2:04pm
petrinaut-docs Ready Ready Preview Aug 30, 2026 2:04pm
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
hashdotdesign-tokens Ignored Ignored Preview Aug 30, 2026 2:04pm

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/infra Relates to version control, CI, CD or IaC (area) area/libs Relates to first-party libraries/crates/packages (area) type/eng > backend Owned by the @backend team type/eng > frontend Owned by the @frontend team

Development

Successfully merging this pull request may close these issues.

1 participant