Skip to main content
Clever Ops

Ripple Grid

The page hides a dot lattice that only motion reveals, dots surface near the pointer while movement pumps rings of brightness rippling outward through the grid before it sleeps again.

Preview & code

Loading Ripple Grid preview

Installation

pnpm dlx shadcn@latest add @cleverui/cursor-ripple-grid

Requires the @cleverui registry in your components.json, a one-off, two-line setup.

Usage

tsx
import { CursorRippleGrid } from '@/components/ui/cursor-ripple-grid'
Exampletsx
import { CursorRippleGrid } from '@/components/ui/cursor-ripple-grid'

export default function CursorRippleGridDemo() {
  return (
    <div className="relative min-h-[560px] overflow-hidden">
      <CursorRippleGrid />
      <div className="relative mx-auto flex min-h-[560px] max-w-3xl flex-col items-center justify-center px-6 py-24 text-center">
        <p className="font-mono text-[11px] uppercase tracking-[0.2em] text-muted-foreground sm:text-xs">
          Spectacle · strike the surface
        </p>
        <h2 className="mt-4 text-4xl font-semibold tracking-tight text-balance sm:text-5xl">
          A lattice that sleeps.
        </h2>
        <p className="mt-4 max-w-md text-sm leading-relaxed text-muted-foreground">
          Move and the grid wakes, dots surface under the pointer, rings travel outward,
          then the field drains back to invisible.
        </p>
      </div>
    </div>
  )
}

API reference

CursorRippleGrid accepts the following props.

PropTypeDefaultDescription
spacingnumber26lattice pitch in px
influencenumber120reveal radius around the pointer in px

…plus everything from React.HTMLAttributes<HTMLDivElement>: className, event handlers, aria attributes and the rest pass straight through.

Frequently asked questions

How do I install the Ripple Grid component?

Register the @cleverui registry in your components.json ("@cleverui": "https://cleverops.com.au/r/{name}.json"), then run `npx shadcn@latest add @cleverui/cursor-ripple-grid`. The shadcn CLI copies the source into your project, you own the code from that point. You can also copy the source directly from this page.

What dependencies does Ripple Grid require?

Ripple Grid has no npm dependencies beyond React and Tailwind CSS itself, so there is nothing extra to install or keep updated.

Can I theme Ripple Grid to match my brand?

Yes. The component is styled entirely with Tailwind utilities over standard design tokens (primary, background, muted, border), so it inherits your existing shadcn/ui theme automatically. Change your CSS variables and the component follows, no source edits needed for palette, radius, or fonts.

Want this built for you?

CleverUI is built by the Clever Ops web team. If you'd rather ship a hand-coded, fast, custom website than assemble one, we build them for Australian businesses every week.

Explore web development services