FlowCanvas

The pan/zoom canvas pane — a single CSS-transformed layer driven by the viewport signal.

Category: display · WCAG 2.1-AA · flow, canvas, viewport, pan, zoom

Props

PropTypeDefaultDescription
childrenReactNodeBackground, nodes, edges.
viewport{ x: number; y: number; zoom: number }Controlled viewport.
onViewportChange(viewport: Viewport) => voidViewport change callback.
minZoomnumber0.2Lower bound for the viewport zoom level.
maxZoomnumber2Upper bound for the viewport zoom level.
panOnDragbooleantrueDrag the empty pane to pan the viewport.
zoomOnScrollbooleantrueWheel or pinch to zoom the viewport.
fitViewbooleanfalseFrame the whole graph once on mount.
classNamestringAdditional CSS class names merged onto the root element.

Design tokens

When to use

When not to use

Examples

Empty canvas with a background

() => (
  <FlowCanvas style={{ height: 240 }}>
    <FlowBackground />
  </FlowCanvas>
)

Related components

← Back to docs