Skip to content
Interactive

ScrollReveal

Children slide and fade in as they scroll into view. Those arriving together go one after another, so a long list never waits on its own stagger. Reduced motion keeps only the fade.

Download
  • React
  • Tailwind CSS v4
  • motion

Props

NameTypeDefaultWhat it does
childrenReactNode—Each direct child reveals on its own.
from"bottom" | "top" | "left" | "right""bottom"Side each child slides in from.
distancenumber28Pixels each child travels.
durationnumber0.6Seconds one child takes.
staggernumber0.08Seconds between children that come into view together.
delaynumber0Seconds before the first child starts.
amountnumber0.25How much of a child must show before it starts, 0 to 1.
oncebooleantrueFalse hides children again when they leave, so they replay.
rootRefObject—Scrolling box that holds this. Leave out to use the page.
classNamestring""On the wrapper, so a grid or flex layout goes here.