children | ReactNode | – | Content to be split and animated. Can be a single text node or any valid React element. |
type | "lines" | "words" | "chars" | "lines,words,chars" | "lines" | Specifies how the text should be split. Can be any combination of "lines", "words", and "chars". |
animateOnScroll | boolean | true | Controls whether the animation should be triggered on scroll. If false, animation starts immediately. |
delay | number | 0 | Delay (in seconds) before the animation begins. |
duration | number | 1 | Duration (in seconds) of the animation for each element. |
stagger | number | 0.1 | Amount of delay (in seconds) between each element's animation start. |
ease | string | "power4.out" | The easing function to use for the animation. Accepts any valid GSAP easing string. |
triggerStart | string | "top 75%" | ScrollTrigger start value. Defines when the animation should start relative to the viewport. |
triggerEnd | string | "bottom top" | ScrollTrigger end value. Defines when the animation should end relative to the viewport. |
once | boolean | true | If true, the scroll-based animation will only occur once when the element enters the viewport. |
className | string | "" | CSS class for styling the wrapper or target element. |