vercel-react-view-transitions

Implements React View Transition animations for route changes, shared elements, and Suspense reveals.

Updated Sep 7, 2026
One-click install
npx skills add https://github.com/raphaelmans/spectralpointengineering --skill vercel-react-view-transitions-raphaelmans
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vercel-react-view-transitions
Source: https://github.com/raphaelmans/spectralpointengineering/tree/main/.skillshare/skills/vercel-react-view-transitions
Command: npx skills add https://github.com/raphaelmans/spectralpointengineering --skill vercel-react-view-transitions-raphaelmans

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Adding smooth, native-feeling animations between UI states in React and Next.js apps is error-prone: transitions silently fail, shared element morphs never fire, and Suspense reveals flicker. This Skill provides a structured workflow, production-tested patterns, and ready-to-use CSS for the React View Transition API. ## Core Features & Use Cases - Directional page transitions: Tag navigations with addTransitionType or transitionTypes on next/link to play forward/back slide animations on hierarchical routes. - Shared element morphs: Pair named <ViewTransition> boundaries across list and detail views so images and cards morph between pages. - Suspense reveals and list identity: Animate skeleton-to-content reveals, list reordering, and layout displacement with correct enter/exit/update triggers. - Use Case: While building a Next.js photo gallery, use this Skill to audit every link and Suspense boundary, add directional slides for list-to-detail navigation, morph thumbnails into full-size images, and isolate the persistent navbar so it stays static during transitions. ## Quick Start Ask the agent to add view transitions to your Next.js app, starting with an audit of all links, Suspense boundaries, and shared visual elements.

Frequently Asked Questions about vercel-react-view-transitions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add page transition animations in Next.js?

Wrap each page component in a type-keyed ViewTransition and tag navigations with transitionTypes on next/link or addTransitionType inside startTransition. Place the boundary in page components, not layouts, since layouts persist across navigations and never fire enter/exit.

How do shared element transitions work in React?

Give two ViewTransition boundaries the same name prop on the source and target views; when one unmounts and the other mounts in the same transition, they morph. Names must be globally unique, and the target must be rendered at navigation time for the pair to form.

Do I need to install react@canary to use ViewTransition in Next.js?

No. The Next.js App Router bundles React canary internally, so ViewTransition works out of the box without installing react@canary. Outside Next.js, you must install react@canary and react-dom@canary since ViewTransition is not in stable React.

Why is my view transition animation not firing?

Common causes include default="none" without an explicit share prop, type-keyed animations where the navigation never adds the type, and wrapping ViewTransition inside a DOM node which suppresses enter/exit. Only startTransition, useDeferredValue, or Suspense activate transitions; regular setState does not.

Which browsers support the React View Transition API?

View transitions work in Chromium 125+, Firefox 144+, and Safari 18.2+. React requires the v2 object form of startViewTransition. Unsupported browsers skip animations gracefully, so the app remains fully functional without them.

Why does my Suspense reveal flicker when content loads?

Flicker happens when the same element renders in both the fallback and the content, causing it to fade against itself. Fix it by rendering that element outside the Suspense boundary or pinning it with a unique view-transition-name.