Components
Loading preview...
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.
@radiumcoders
npx shadcn@latest add https://21st.dev/r/radiumcoders/dither-button"use client";
import DitherButton from "@/components/ui/dither-button";
export default function HiRes() {
return (
<div className="flex min-h-screen w-full items-center justify-center bg-background p-12">
<DitherButton ditherSize={2}>Hi-Res</DitherButton>
</div>
);
}