A button with a live ordered-dithering (Bayer matrix) canvas fill that animates a subtle wave across the surface, with stroked label and configurable dither color, size, and opacity. Pure 2D canvas — no WebGL.
"use client"; import DitherButton from "@/components/ui/dither-button"; export default function Default() { return ( <div className="flex min-h-screen w-full items-center justify-center bg-background p-12"> <DitherButton>Deploy Doom</DitherButton> </div> ); }