[Phase 2] Implement the Cytoscape graph adapter and extension loader #13

Closed
opened 2026-07-25 21:53:32 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-25 21:53:32 +00:00 (Migrated from github.com)

Parent: #2
Depends on: #7, #8, #12

Scope

  • Wrap Cytoscape.js behind a typed GraphAdapter.
  • Support full snapshot load, incremental add/update/remove, positions, selection, fit, viewport export, stylesheet updates, and layouts.
  • Centralize extension registration and version compatibility tests.
  • Begin with selected layouts and edge creation support; add extensions individually rather than wholesale.
  • Keep pointer movement, drag frames, zoom frames, hover, and layout animation browser-local.

Acceptance criteria

  • No package outside src/graph accesses the Cytoscape instance.
  • Adapter events are committed semantic events, not high-frequency raw frames.
  • Snapshot and incremental projection produce equivalent visible state.
  • Renderer teardown removes listeners and resources.
  • Compatibility tests cover every enabled extension.
Parent: #2 Depends on: #7, #8, #12 ## Scope - Wrap Cytoscape.js behind a typed `GraphAdapter`. - Support full snapshot load, incremental add/update/remove, positions, selection, fit, viewport export, stylesheet updates, and layouts. - Centralize extension registration and version compatibility tests. - Begin with selected layouts and edge creation support; add extensions individually rather than wholesale. - Keep pointer movement, drag frames, zoom frames, hover, and layout animation browser-local. ## Acceptance criteria - No package outside `src/graph` accesses the Cytoscape instance. - Adapter events are committed semantic events, not high-frequency raw frames. - Snapshot and incremental projection produce equivalent visible state. - Renderer teardown removes listeners and resources. - Compatibility tests cover every enabled extension.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/quasar-ui#13
No description provided.