Dense field
Tighter grid spacing for a denser look.
import { NoiseDotFieldHero } from "@/components/ui/hero-noise-dot-field";
export default function Dense() {
return <NoiseDotFieldHero backgroundProps={{ spacing: 18, pocketRadius: 220 }} />;
}Hero
A canvas-rendered hero block. A dense dot grid is displaced by a sine-wave noise field and parts smoothly around the cursor with a falloff pocket. Honors `prefers-reduced-motion`, devicePixelRatio-aware, and ships with zero external animation deps beyond `motion`.
UniqueUI CLI
shadcn CLI
A canvas-rendered dot grid that displaces with a sine-wave noise field and parts around your cursor. No external animation deps.
import { NoiseDotFieldHero } from "@/components/ui/hero-noise-dot-field";
export default function Demo() {
return <NoiseDotFieldHero />;
}Tighter grid spacing for a denser look.
import { NoiseDotFieldHero } from "@/components/ui/hero-noise-dot-field";
export default function Dense() {
return <NoiseDotFieldHero backgroundProps={{ spacing: 18, pocketRadius: 220 }} />;
}Pass any CSS color to recolor the dot field.
import { NoiseDotFieldHero } from "@/components/ui/hero-noise-dot-field";
export default function Tinted() {
return (
<NoiseDotFieldHero backgroundProps={{ color: "rgba(110, 231, 183, 0.85)" }} />
);
}Layer the canvas behind a different composition.
import { NoiseDotFieldBackground } from "@/components/ui/hero-noise-dot-field";
export default function BgOnly() {
return (
<section className="relative isolate min-h-screen">
<NoiseDotFieldBackground />
<div className="relative">…</div>
</section>
);
}| Prop | Type | Description |
|---|---|---|
children | ReactNode | Slotted hero content. Omit for the default headline + CTAs. |
className | string | Classes for the outer `<section>`. |
backgroundProps | { spacing?: number; color?: string; pocketRadius?: number; className?: string } | Forwarded to the canvas background layer. |