Skip to content

Capabilities ​

Vyuh Diagram combines editable elements, shared text, connections and extensible tools in one drawing. Use controller commands for application actions and definitions to describe custom elements.

Elements and editing ​

CapabilityWhat you can do
ShapesCreate standard or custom shapes; declare their anatomy: outline, body regions, values, appearance, properties, ports and behavior.
TextEdit standalone text, shape text and connector labels with shared formatting, paragraphs, nested lists and checklists. Use a drawing-wide font catalog.
Selection and transformsSelect, move, resize, rotate, group, align, distribute, reorder, copy and delete elements.
LocksProtect elements and their owned contents from edits while retaining selection.
Undo and redoUndo or redo document edits, including text changes, connections and grouped operations.
Custom toolsRegister tools that use the same editing and preview contracts as standard tools.
Commands and drawing searchSearch installed commands with Cmd/Ctrl+K; find elements and reveal collapsed owners.
Shared propertiesEdit compatible properties across selected kinds with typed keys, explicit mixed values and intersected constraints.
Graph layoutArrange sibling nodes or a container's direct children; preserve descendant offsets and pinned nodes.
Diagnostics and repairsRun installed domain checks and apply suggested fixes atomically with a snapshot guard.

Connections and presentation ​

CapabilityWhat you can do
ConnectorsConnect element anchors or explicit ports with straight, elbow, quadratic or cubic Bézier routes. Apply connection rules and edit route controls.
Connected creationDrop a port into empty space to create the next shape and connection in one undo step.
Connector labelsAdd up to two single-line labels by default; edit, style, move and delete them independently. Enter edits the first label or creates one.
NavigationPan, zoom, fit content and move the view to points, rectangles, elements, regions or the selection, with or without motion.
Animation & effectsPlay flows, pulses and blinks along connectors, and pulses, halos, scaling, fades or custom badges on shapes.
Canvas and gridsConfigure canvas bounds, backgrounds, grid patterns and snapping. Compose dot, line and cross layers.
Embedded widgetsPlace Flutter controls inside registered elements. Share element values and history while retaining control interaction, transforms and clipping. Supply portable content for export.
AccessibilityExpose element and connector-label selection, text editing and native controls through semantics that follow visible geometry.

Integration and output ​

CapabilityWhat you can do
Rules and changesObserve document changes and enforce application permissions or fixed domain invariants.
PersistenceSave versioned JSON and restore documents through validated imports.
PNGExport a static drawing with transparent or explicit background, chosen bounds and raster scale. Requires Flutter.
SVGExport vector geometry, native text, images, clipping and portable widget content. Supply fonts for self-contained text resources.
AgentsGenerate and update diagrams through commands, validate proposed edits and save JSON or SVG.
Domain extensionsBuild domain editing experiences such as service maps and storyboards.

Integration boundaries ​

Automatic elbow routing avoids its disjoint endpoint owners; it does not continuously route around every obstacle in a scene. Use controller.edits.reroute() for explicit obstacle-avoiding elbow rerouting in one undoable edit. Moving an unrelated obstacle does not automatically rerun that search; a rerouted path follows endpoint moves while it stays clear and otherwise reports itself stale. Port labels are not supported. Path effects apply to connectors. PDF export is not available.

Widget export uses declared portable content rather than arbitrary native widget pixels. SVG text appearance depends on fonts and the target viewer. Controllers that join one diagram share its committed document; each keeps its own selection, interaction and undo. There is no built-in transport for remote collaborators. See collaboration before attaching multiple users or agents.