A pixel-dissolve page transition that breaks route changes into a crisp digital grid reveal.
Pixel Transition turns the cut between routes into a designed moment: pixels dissolve the old page into the new one.
Use it on brand sites, campaign pages, portfolios, and editorial journeys where route changes benefit from continuity. Avoid it in apps, docs, checkout, and search paths where navigation speed is the feature.
The risk in production is delay. Mount the transition where route state actually changes, keep the duration short, restore focus after navigation, and give reduced-motion users an instant or nearly instant path.
(Next.js App Router only. Requires next-transition-router for route-transition lifecycle hooks and must be wrapped in its provider. This effect will not function in plain React or in the Next.js Pages Router.)
You can preview it now. Upgrade to Pro for instant install access.
You can preview it now. Upgrade to Pro for instant install access.
You can preview it now. Upgrade to Pro for instant install access.
Use this as route-transition implementation guidance. Verify the shipped integration point, route-state behavior, focus restoration, cleanup, timing controls, and reduced-motion fallback before relying on exact props, defaults, imports, or installation steps.
Not for apps, docs, checkout, search, or frequently navigated product flows where delay harms completion.
Keep duration short, avoid artificial route delays, and do not block interactivity after the destination route is ready.
Move focus to the destination main region after navigation. On mobile and reduced motion, use instant transitions or short fades.
| Prop | Type | Default | Description |
|---|---|---|---|
cols | number | 30 | Pixel grid columns. |
rows | number | 40 | Pixel grid rows. |
pixelColor | string | #111111 | Color used to draw each transition pixel. |
duration | number | 1 | Duration multiplier for the leave and enter pixel sweeps. |
enableContentShift | boolean | false | Adds content scale/blur during the transition. |
Use it when a technical, game-like, or retro-digital brand needs pixels dissolving one page into the next without delaying navigation.
Mount it where the route wrapper remounts on navigation, often a template or route-transition component rather than a persistent layout.
Keep it short, usually 300–600ms. Longer transitions need a real loading reason.
Move focus to the destination main region or heading after navigation completes.
Use instant navigation or a brief fade, not full-screen movement or masks.
Yes. A custom version should define motion rules, visual treatment, performance budget, fallback behavior, source handoff, and implementation notes for the specific page or launch context.
Need a custom effect? Tell us what to create.