Drift Canvas
image-galleryProEine endlose, ziehbare Bildfläche: Eine Kachel aus Karten unterschiedlicher Höhe wiederholt sich nahtlos in beide Richtungen, mit Trägheit, Mausrad und Verschieben per Pfeiltasten.
Pro kann noch nicht gekauft werden. Die Seite öffnet, sobald die Zahlung bereit ist.
Vorschau
Live-Demo. Das Theme schaltet die Demo selbst um.
Code
Der Code ist gesperrt
Drift Canvas gehört zu Manniche UI Pro. Ein Schlüssel öffnet den Quellcode aller 60 Effekte.
Bald verfügbar49 € · Einführungspreis bis einschließlich 31. Dezember 2026. Danach 79 €.
- Einmalzahlung
- Ein Entwickler
- Der Schlüssel kommt sofort per E-Mail
- Keine Umsatzsteuer (§ 19 UStG)
Hast du einen Schlüssel? Hol den Code mit der CLI oder per MCP.
Der Schlüssel liegt in MANNICHE_PRO_KEY, nie im Code oder in der Adresse. So richtest du ihn ein
npx shadcn@latest add @manniche-pro/drift-canvasclaude mcp add --transport http manniche-ui https://mikkelmanniche.dk/api/mcp --header "Authorization: Bearer $MANNICHE_PRO_KEY"Props
DriftCanvasProps
| Prop | Typ | Standard | Was sie tut |
|---|---|---|---|
items erforderlich | DriftCanvasItem[] | – | Pictures to lay out. They repeat to fill the tile, and the tile repeats forever in every direction. |
columns | number | 5 | Columns in one repeat of the tile. More columns means a wider tile before the pattern repeats. |
size | number | 220 | Width of a column (a card) in CSS pixels. It shrinks on narrow containers so a phone still sees several cards. |
gap | number | 16 | Space between cards in CSS pixels. |
radius | number | 16 | Corner radius of every card in CSS pixels. |
onItemClick | (item: DriftCanvasItem, index: number) => void | – | Called when a card is clicked or activated by keyboard. Giving it turns every card into a focusable button. It never fires for the click that ends a drag. |
wheel | 'auto' | 'always' | 'off' | 'auto' | How the mouse wheel and trackpad pan the canvas.
|
inertia | number | 0.85 | How long a flick keeps gliding, from 0 (stops at once) to 1 (long glide). Ignored with reduced motion, where there is no glide. |
touchDrag | boolean | true | Touch behaviour. By default the surface sets touch-action: none so a finger can pan in any direction, which also means a finger on the canvas will not scroll the page. Pass false to use touch-action: pan-y instead: swiping sideways pans the canvas and swiping up or down scrolls the page. Mouse and pen always drag freely. |
aria-label | string | 'Image canvas' | Accessible name of the canvas. |
children | ReactNode | – | Content drawn above the cards. It ignores the pointer; switch pointer-events-auto back on for anything clickable. |
className | string | – | – |
A11y
Noch keine Hinweise zur Barrierefreiheit.
Die Hinweise kommen mit dem Quellcode, wenn Pro öffnet.