Desktop optimized

Please maximize your browser window or use a larger screen to explore the component library.

Go to home

Flip Vertical Reveal

A 3D mechanical text reveal component. Simulates a split-flap display or falling dominoes by hinging characters or words down from a 90-degree 3D perspective.

Last Modified:Aug 17, 2026

Install

CLI

flip-vertical-reveal
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flip-vertical-reveal.json

Or install a specific demo variant:

flip-vertical-headline-demo
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flip-vertical-headline-demo.json

Or install a specific demo variant:

flip-vertical-paragraph-demo
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flip-vertical-paragraph-demo.json

Manual

1. Install Dependencies

Dependencies
$pnpm add gsap @gsap/react clsx tailwind-merge

2. Add Source Code

Props

PropTypeDefaultDescription
textstringRequiredThe full string of text to reveal.
asReact.ElementType"h1"The HTML tag to render as.
splitBy"word" | "char""char"Whether to split and animate by word or individual character.
startAnglenumber-90The starting rotation on the X-axis in degrees.
startYstring"0.4em"Tiny starting vertical offset to create a rising hinge effect.
durationnumber0.8The duration of the flip for each individual element.
delaynumber0Delay before the animation begins (in seconds).
staggernumber0.03The stagger delay between each element flipping.
viewportOncebooleantrueIf true, plays once. If false, seamlessly reverses on scroll away.
triggerStartstring"top 90%"Viewport threshold for when the animation should start.