Skip to content
Screen

Design canvas

BetaBeta — the props contract is close to final, but small breaking changes can still land.

Figma-style editor with layers, an infinite canvas, a floating tool bar, and scrubbable property inputs.

Composition

Rendered design editor

  • <DesignCanvasBlock>
    • layers panel
      • <ScrollArea>
        • <Button />
        </ScrollArea>
    • <InfiniteCanvas>
      • <InfiniteCanvasContent>
        • <InfiniteCanvasItem>
          • layer node
          </InfiniteCanvasItem>
        </InfiniteCanvasContent>
      • <InfiniteCanvasControls />
      </InfiniteCanvas>
    • <Toolbar>
      • <ToolbarGroup>
        • <ToolbarButton />
        </ToolbarGroup>
      </Toolbar>
    • properties panel
      • <NumberField>
        • <NumberFieldGroup>
          • <NumberFieldScrubArea />
          • <NumberFieldInput />
          </NumberFieldGroup>
        </NumberField>
      • <ColorPicker>
        • <InputGroup>
          • <InputGroupAddon>
            • <ColorPickerTrigger />
            </InputGroupAddon>
          • <ColorPickerInput />
          • <NumberField />
          </InputGroup>
        • <ColorPickerContent />
        </ColorPicker>
      • <Toggle />
    </DesignCanvasBlock>

Installation

Registry command
See registry manifest

Usage

Library dependencies

Owned source

This template’s recipe and private support files. Public dependencies stay linked above.

Block recipesrc/registry/blocks/control-ui/design-canvas.tsx
Design canvas datasrc/registry/blocks/control-ui/design-canvas-data.ts
Design canvas inspectorsrc/registry/blocks/control-ui/design-canvas-inspector.tsx
src/registry/blocks/control-ui/design-canvas.tsx