Skip to content
FeedbackGenerated from the public API

StaggerGroup

A group that delivers its children one after another, with the delay declared once.

@luc/ui/motion

Live preview

Each item carries its own index — an implicit counter breaks the moment one item is conditional.

Return

Volatility

Sharpe

Drawdown

<StaggerGroup step={0.05}>
  {cells.map((cell, index) => (
    <StaggerItem key={cell.id} index={index}>{cell.node}</StaggerItem>
  ))}
</StaggerGroup>

Usage

import { StaggerGroup } from "@luc/ui/motion";
<StaggerGroup step={0.05}>
  {cells.map((cell, index) => (
    <StaggerItem key={cell.id} index={index}>{cell.node}</StaggerItem>
  ))}
</StaggerGroup>

API

Exported symbols
ExportKindSignature
StaggerGroup3 documented props({ className, children, step, delay, maxItems, ...props }: StaggerGroupProps) => import("@types/react").JSX.Element
StaggerItem2 documented props({ className, children, index, distance: travel, ...props }: StaggerItemProps) => import("@types/react").JSX.Element

StaggerGroup props

Type: StaggerGroupProps

Values the compiler reads from the declaration.

StaggerGroup props
PropTypeDefaultNotes
delay?number | undefined—Delay before the first item, in seconds.
maxItems?number | undefined—Cap the total stagger so a large grid does not crawl.
step?number | undefined—Delay added per item, in seconds. Keep it small.

StaggerItem props

Type: StaggerItemProps

Values the compiler reads from the declaration.

StaggerItem props
PropTypeDefaultNotes
distance?number | undefined—
indexnumber—Position in the group. The caller owns the order — no child counting.

Accessibility

The accessibility contract is the one the primitive underneath the component already honours — the platform element for a control, or the ARIA pattern the component implements — and the Showcase's own pages are scanned for violations with axe.

What happens on the server, and when hydration changes it.

Luc UI v1.0StaggerGroupdark theme