Two inks dropped into still water and left alone. Plumes bloom, fold into each other and thin at the edges; move the pointer and the water stirs around it.
Tune here, paste once — it ships as about a kilobyte of WebGL.
Pick a palette, drag the sliders, hit randomize. The prompt carries the values you see, not the defaults.
Single HTML by default. Switch to Next.js, React, Vue, Astro, WordPress, Shopify or Webflow and the output contract changes with it.
Claude, Cursor, ChatGPT, Copilot, v0 — anything that writes code. You get a self-contained canvas with the shader inline.
First child of a relative container, content above it. Add a scrim if text needs more contrast.
The uniforms stay named and the CONFIG object sits at the top of the script. Nothing is baked.