Elastic Mesh
backgroundProA springy line mesh behind your content that pinches towards the pointer, sends a ripple on press and leaves a glowing trail.
Opening soon
Pro cannot be bought yet. The page opens when payment is ready.
Preview
The preview could not load.
Live demo. The theme switches the demo itself.
Code
elastic-mesh.tsxPro
The code is locked
Elastic Mesh 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
CLI
npx shadcn@latest add @manniche-pro/elastic-meshMCP
claude mcp add --transport http manniche-ui https://mikkelmanniche.dk/api/mcp --header "Authorization: Bearer $MANNICHE_PRO_KEY"Props
ElasticMeshProps
| Prop | Type | Default | What it does |
|---|---|---|---|
variant | 'mesh' | 'knots' | 'both' | 'both' | Draw the mesh lines, the knots where they cross, or both. |
gap | number | 30 | Distance between knots in CSS pixels. |
radius | number | 220 | How far from the pointer the pull reaches, in CSS pixels. |
strength | number | 1 | How hard knots are drawn towards the pointer. 1 is a firm pinch, negative values push them away. |
tension | number | 1 | How quickly the mesh springs back. Below 1 it is looser and wobblier, above 1 it is tauter. |
drift | number | 0.5 | A slow swell that keeps the mesh alive when nobody is touching it. 0 turns it off, 1 is a clear swell. |
trail | boolean | true | A fading ribbon behind the pointer. |
ripple | boolean | true | A press or tap sends a ripple through the mesh. |
color | string | 'currentColor' | Colour of the resting mesh. Any CSS colour; defaults to the text colour of gridClassName. |
accentColor | string | 'var(--primary, #7c6cff)' | Colour the mesh warms to where it is stretched, and the colour of the trail. Any CSS colour, including var(--x). |
gridClassName | string | – | Classes for the canvas layer, e.g. text-foreground/60 to colour the resting mesh. |
children | ReactNode | – | Content shown on top of the mesh. |
className | string | – | – |
A11y
No accessibility notes written yet.
The notes come with the source when Pro opens.