Step Wipe
A tall scroll-driven section that wipes between product steps as you scroll, with the background and the centred card clipping open together, and the title, step number and description swapping in sync at each step.
One of 70 GSAP components in React, Vue and HTML.
On mobile
Take the free components with you.






In React, Vue and HTML, in your inbox, ready when you're back at your desk.
How it's built.
The bit that took the most tuning is the wipe itself. The background and the card in the middle both have to clip open at exactly the same rate as you scroll, or it reads as two separate things happening instead of one. I drive both from a single scroll-progress number and write it into a CSS variable, then the clip-path is a static template that just reads that variable - never animate the clip-path string directly, browsers collapse it to a shorthand and the tween silently freezes then snaps. Writing the number and letting a plain CSS calc() do the rest is the only way I got it to move smoothly in both directions.
The text underneath only changes once per step, not continuously with scroll - that's deliberate. If the title and number ease with the same scrub as the image it feels sluggish and directionless. So I track which step you're actually on and fire a proper little transition - the old title lifts out, the new one rises in, the digits roll to the new number. The trigger point is direction-aware on purpose: scrolling down it fires late in the wipe, scrolling back up it fires early, so the text never flickers when you hover around a boundary. It's the same idea as an odometer, just for two digits instead of a full count-up.
Past that it's yours. Swap in your own steps with a title, a number, a description and two images, add as many as you want, and set how much scroll distance each one gets. The choreography is identical on a phone - same sticky wipe, same masked swaps - it's just repositioned with CSS: the title moves top-left, the number top-right, and the description drops below the card so nothing overlaps on a narrow screen.
What you'll need.
Attributes, tips, use cases and full code are part of access.
The preview and provenance stay public. Tune-it docs, the data-anm-* attribute table, real-world use cases and the copy-ready code unlock the moment you sign in.
Frequently asked
- Does Step Wipe work with React and Vue?
- Step Wipe ships as React (Next.js included), Vue 3 (Nuxt included), plain HTML/CSS/JS - the same animation in each format. The React version uses the official useGSAP hook with cleanup handled; the Vue version is a real single-file component with <script setup>.
- Do I need GSAP to use Step Wipe?
- Yes. Step Wipe is built on GSAP directly, and GSAP has been 100% free for commercial use, including every plugin, since version 3.13. The component page lists exactly what to install.
- Can I customize Step Wipe without editing code?
- Step Wipe exposes 5 tunable controls in the Customize panel on this page - drag the values, watch the live preview respond, and the code you copy carries your exact settings.
- Is Step Wipe free?
- Step Wipe is part of the Annnimate Library, a paid subscription (from EUR 249/year). The live preview and customization run free on this page; the paste-ready code is for members.
- Can I use Step Wipe in client projects?
- Yes. The Annnimate license covers commercial and client work - ship Step Wipe on as many projects as you build, with no attribution required.
- Does Step Wipe respect prefers-reduced-motion?
- Yes. Every Annnimate component handles prefers-reduced-motion via gsap.matchMedia, so users who opt out of motion get an effectively instant, readable state.
