shared · Page blocks
Stagger
components/site/Reveal.tsx
preview
Section 1
Section 2
Section 3
usage · in this app
components/landing/tools-section.tsximport { Stagger } from '@/components/site/Reveal'
<Stagger className="mt-12 grid gap-4 md:grid-cols-3">
{EXTRAS.map((e) => (
<StaggerItem key={e.title}>
<Link
href={e.href}
className="card-lift group flex h-full flex-col gap-3 rounded-lg border border-[var(--border-strong)] bg-[var(--surface)] p-5"
>
<div className="mono text-base font-medium text-[var(--foreground)]">{e.title}</div>
<p className="text-ui leading-compact text-[var(--fg-muted)]">{e.body}</p>
<div className="mono mt-auto text-xs text-[var(--fg-dim)]">{e.cmd}</div>
<span className="mono inline-flex items-center gap-1 text-xs text-[var(--accent)]">
{e.cta}
<ArrowRight size={12} strokeWidth={2} className="transition-transform group-hover:translate-x-0.5" />
</span>
</Link>
</StaggerItem>
))}
</Stagger>props
{ children: ReactNode delay?: number gap?: number className?: string }used on · 1
tokens · 0
referenced in its fileNo token referenced directly; it may style itself through the components it renders.
history · 2
verified
Previews for the multi-component files (Orbit, Logo, Reveal) as named <Name>Preview exports, and PageIntro
2026-10-22
verified
CID-025: under reduced motion revealed sections show at once (they stayed blank after hydration)
2026-10-22