Pendulum Reveal
A kinetic text reveal component. Elements drop down from a top hinge point, utilizing a heavy elastic ease to simulate a swinging pendulum settling into place.
Last Modified:Aug 17, 2026
Install
CLI
pendulum-reveal
Or install a specific demo variant:
pendulum-reveal-demo
Manual
1. Install Dependencies
Dependencies
2. Add Source Code
Props
| Prop | Type | Default | Description |
|---|---|---|---|
text | string | Required | The full string of text to reveal. |
as | React.ElementType | "h1" | The HTML tag to render as. |
splitBy | "word" | "char" | "char" | Whether to split and animate by word or individual character. |
startAngleX | number | 90 | The degree to which elements are folded up into the ceiling. |
startAngleZ | number | -8 | A slight loose hinge twist added to the drop. |
duration | number | 1.6 | The duration of the swing. Elastic eases need longer durations to resolve the wobble. |
delay | number | 0 | Delay before the animation begins (in seconds). |
stagger | number | 0.04 | Stagger delay between each element dropping. |
viewportOnce | boolean | true | If true, plays once. If false, seamlessly reverses on scroll away. |
triggerStart | string | "top 90%" | Viewport threshold for when the animation should start. |