ONONC

Scroll Stack

Cards that pin and scale into a stack as you scroll an internal viewport.

scrollmotionlayout

Styled with ONONC's design tokens shadcn add installs them for you.

Scroll

Analytics

Realtime insight across every surface

Automation

Flows that run themselves

Collaboration

Ship together, in one place

Security

Locked down by default

Customize

Layout

Viewport height420px
Card height260px
Top offset32px
Peek stagger14px
Scroll gap28px

Motion

Scale step0.05

How much a covered card shrinks.

Settle rotation

Style

Corner radius20px

Props

PropTypeDefaultDescription
itemsScrollStackItem[]gradient setCards to stack ({ title, subtitle?, background? }).
itemHeightnumber260Card height in pixels.
topOffsetnumber32Sticky top offset for the first card, in pixels.
staggernumber14Extra sticky-top added per card so stacked cards peek, in pixels.
scaleStepnumber0.05Scale reduction applied to a card as the next scrolls over it.
gapnumber28Vertical gap between cards while scrolling, in pixels.
rotatenumber0Degrees of rotation applied to a settling card (0 disables).
radiusnumber20Card corner radius in pixels.
heightnumber420Height of the internal scroll viewport, in pixels.
labelstring"Scroll stack"Accessible name for the stack region.