Desktop optimized

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

Go to home

Flip 3D Reveal

A premium, mechanical text reveal component. Characters or words rotate into view along the Y-axis, creating a Rolodex or split-flap display effect with a microscopic physics bounce.

Last Modified:Aug 17, 2026

Install

CLI

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

Or install a specific demo variant:

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

Or install a specific demo variant:

flip-3d-paragraph-demo
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flip-3d-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. Preserves native wrapping.
asReact.ElementType"h1"The HTML tag to render as.
splitBy"word" | "char""char"Splitting by character is great for headlines. Splitting by word optimizes paragraphs.
startAnglenumber90The starting rotation on the Y-axis in degrees.
startXstring"-0.2em"Tiny starting horizontal offset to create a sliding flap effect.
durationnumber0.8Duration of the flip animation per item.
delaynumber0Delay before the animation starts (in seconds).
staggernumber0.03Stagger time between each item flipping.
viewportOncebooleantrueIf true, animates only once. If false, seamlessly reverses on scroll.
triggerStartstring"top 90%"Viewport threshold for when the animation should start.