Skip to content

Beautiful scroll reveal animations for React, Vue and Astro

Make content fade, slide and pop in as it scrolls into view. About 2 kB, zero dependencies, and built on native browser APIs that work in every major browser.

Wrap an element in Reveal, put v-reveal on it, or call reveal(). It animates as soon as it scrolls into view, with no CSS to write for the animation and no layout shift.

import { Reveal } from "@awesome-reveal/react";
<Reveal>
<p>I gently appear as I enter the viewport</p>
</Reveal>;

By default, the element fades in and slides up. To use another animation, set one option.

Each tile uses a built-in animation. The caption shows the call that creates its keyframes.

fade()
slide()
scale()
blur()
pop()
enter({ x: -40, rotate: -10 })

Tiny and dependency-free

About 2 kB gzipped for Reveal with one animation, with zero third-party dependencies. Tree-shaking keeps only the animations that you import.

Smooth, native performance

Intersection Observer detects the reveal, with no scroll listeners. The Web Animations API runs it on the compositor where possible.

Works in every major browser

Built on Baseline Widely available web APIs that Chrome, Edge, Firefox and Safari have supported for years.

Accessible by default

Respects prefers-reduced-motion out of the box. Hidden content stays in the accessibility tree and in find-in-page.

Server rendering with no flash

React, Vue and Astro render content hidden on the server, so it never flashes before the animation. Create keyframes in React Server Components or in the Astro frontmatter.

Built for TypeScript

Strict types for every option, element and keyframe, with full autocomplete in your editor.

Custom animations

Six built-in animations, spring easing, and custom keyframes from any function of time. See Keyframes.

Ready for AI coding agents

The packages ship agent skills, so Claude Code, Cursor and other agents add animations and migrate v4 code the right way.

Have a question? Read the FAQ. Coming from react-awesome-reveal? Awesome Reveal is its successor. Read the migration guide.