Fluid Wake
cursorProA glowing dye trail behind the pointer or finger, driven by a real fluid simulation in WebGL that curls and drifts, with fallbacks for weaker GPUs.
Pro cannot be bought yet. The page opens when payment is ready.
Preview
Live demo. The theme switches the demo itself.
Code
The code is locked
Fluid Wake is part of Manniche UI Pro. A key unlocks the source of all 60 effects.
Opening soon€49 · Introductory price until 31 December 2026. €79 after that.
- One-off payment
- One developer
- Your key arrives by email straight away
- No VAT (§ 19 UStG)
Have a key? Get the code with the CLI or MCP.
The key lives in MANNICHE_PRO_KEY, never in your code or a URL. How to set it up
npx shadcn@latest add @manniche-pro/fluid-wakeclaude mcp add --transport http manniche-ui https://mikkelmanniche.dk/api/mcp --header "Authorization: Bearer $MANNICHE_PRO_KEY"Props
FluidWakeProps
| Prop | Type | Default | What it does |
|---|---|---|---|
color | string | '#ff6a2b' | Colour of the dye. Any CSS colour; dense parts of the trail burn towards white. |
duration | number | 2.2 | Seconds until the trail has faded, from 0.1 to 30. |
size | number | 18 | Width of the brush in CSS pixels. |
fade | 'soft' | 'thin' | 'soft' | soft lets the trail spread and dim as it fades; thin eats it from the edges, so it narrows to a thread. |
swirl | number | 0.3 | 0 to 1: how much the fluid curls into small eddies. |
force | number | 1 | How hard the pointer stirs the fluid. 1 is a gentle wake, 2 is a splash. |
quality | WakeQuality | 'medium' | Grid resolution. low suits phones and big canvases, high gives finer curls. |
layer | 'behind' | 'above' | 'behind' | Draw the trail under the content (default) or over it. Both let clicks through. |
touch | boolean | true | Let fingers paint as well as the mouse and pen. Scrolling keeps working either way. |
children | ReactNode | – | The surface the trail lives in. Give it a size and, usually, a background. |
className | string | – | – |
A11y
Screen reader
Every canvas the component creates is aria-hidden and has pointer-events: none, so the trail never takes clicks or focus and is not announced. children are read as usual.
Reduced motion
The trail is decorative and reacts only to a mouse, pen or finger (touch), so it has no keyboard equivalent. Under reduced motion the dye is not stirred and a trail lasts at most 0.8 s. The simulation sleeps once the trail has faded or the surface is off screen.
Other
With layer="above" the dye is drawn over the content for a moment; check text contrast under the colour you choose. Without float-texture GPUs it falls back to soft painted dabs.