Marquee Canvas
A canvas of selectable shapes. Click a shape to select only it, or drag a rubber-band rectangle over empty space to select every shape it intersects (and clear the rest).
- Axe
- Name
- Roving
- Focus
- Drag
- Cancel
Preview
Alpha
Beta
Gamma
Installation
npx shadcn@latest add https://ui.publictheta.com/r/marquee-canvas.jsonConformance
Verified against the @publictheta/ui-spec marquee-canvas specification on both the React and vanilla reference implementations, across Chromium, Firefox, and WebKit.
- Axe — No WCAG 2 A/AA axe-core violations
- Name — The widget container exposes an accessible name
- Roving — Exactly one tab stop; Arrow keys move within the widget
- Focus — A visible focus indicator appears on keyboard focus (WCAG 2.4.7)
- Drag — Pointer-drag surfaces don't select text or hijack touch scrolling
- Cancel — Escape mid-drag (and pointercancel, when the OS takes the gesture) restores the value the drag started from and ends it, so the release commits nothing
See the full conformance matrix across all components.