A grid of dots that rides ripples: a slow swell crosses the field and every pointer move drops a ring that spreads outward, lifting dot size and brightness as it passes. Rings fade as they travel, so a still pointer leaves a quiet grid.
Run the real thing here, tune it, then copy the prompt that rebuilds it.
The preview is the shipped loop itself: CSS, SVG or Canvas 2D, a few kilobytes, no WebGL.
Swatches recolour, sliders change density and speed, toggles switch parts on and off. Randomize for a surprise.
A snippet for any page, or a component for Next.js, React, Vue, Astro, WordPress, Shopify or Webflow.
It quotes the loop verbatim with your CONFIG values baked in, plus the integration rules.
Container gets position: relative and overflow: hidden; the background fills it; content sits above.