Skip to main content

Rendering and interaction

What BoardRoot owns and where custom rendering begins.

BoardRoot is a convenience facade over the engine, not a second engine. It maps focused subscribables to shallow Vue refs and renders the viewport, grid, nodes, selection chrome, snap guides, and interaction affordances.

The framework adapter translates pointer and keyboard input. Low-level interaction methods live in the unsupported first-party ABI rather than the normal application API.

Custom renderers draw node content. Dragging, resizing, positioning, selection, and LOD remain board-shell responsibilities. Slots provide a local alternative to a renderer registry.

Keep controls that edit text inside the renderer, then call engine commands for persistent changes. Stop pointer propagation for interactive form elements so editing does not begin a board drag.