Capability status
This is an implementation assessment, not a promise of complete parity with another editor. Features marked partial have useful foundations but should not be treated as finished application contracts.
| Capability | Current position |
|---|---|
| Custom shapes | Available through registry definitions composing shared geometry, text, layers, ports and capabilities. |
| Editing and history | Canonical commands, selection, transform previews, undo/redo and shared rich-text editing are implemented. Browser input and complex ownership scenarios still need broader conformance coverage. |
| Standalone text | Distinct TextElement record with shared framed transforms, paragraph editing, and a dedicated registry definition. No shape decoration or port fields. |
| Custom tools | Open tool IDs and a registry support defaults and host tools through shared command/preview contracts. |
| Ports and connectors | Shared port geometry, bindings, connection policy and straight/elbow/quadratic/cubic routes are implemented. Elbow routing avoids its disjoint bound owners in covered cases; this is not a general scene-obstacle router. |
| Connector labels | Canonical labels resolve and render shared rich text at a path fraction. Individual label selection, dragging, corner/side resizing, deletion and undo/redo work. Double-click creation and shared text editing are implemented. Broader composition, clipping and interaction conformance remain under verification. |
| Port labels | Placement, visibility and editing contract is not implemented. |
| Embedded Flutter widgets | Region interactions and overlay hooks exist. Arbitrary widgets inside shapes do not yet have a complete focus, gesture, transform, clipping, accessibility and export contract. |
| Lock/unlock | Definition-level movement/editing capabilities exist. A complete per-instance lock/unlock feature is still missing. |
| Viewport animation | Public animated navigation to points, bounds, elements, regions and selection is implemented, with duration, curve and cancellation controls. |
| Canvas grids | Dots, lines and layered grids share validated, immutable pattern declarations. Hosts can compose dot, line and cross layers; visibility and grid snapping are independently configurable. |
| Path effects | Registry-based effects, particles and pulse, particle appearances, speed and base-path presentation controls exist for connectors. Attaching effects to every kind of authored path remains incomplete. |
| Persistence | Versioned JSON preserves canonical diagram content. Runtime path effects are not part of saved document content. General migration and output contracts need further work. |
| PNG output | Snapshot PNG export uses captured scene geometry and awaited images. Basic pixels, resource failures and snapshot lifetime are tested; exhaustive fidelity and browser download proof remain open. See PNG output. |
| High refresh rate rendering | Incremental and timing checks provide useful evidence. Consistent end-to-end 120 Hz release-browser performance across representative scenes is not yet established. |