Spread. Don't Wrap.
Pure React Motion.
Say goodbye to messy wrapper components polluting your DOM. blaze-motion gives you 97 native animated HTML primitives and 14 production presets you spread directly into your elements. You own config.ts.
Add to your shadcn project in seconds:
npx shadcn@latest add https://motion.asmitsah.dev/r/motion.jsonslideUp
Spread Preset
Transforms Y axis with zero opacity shift for optimal LCP
Engineered for developers who hate DOM pollution.
Most animation libraries force you to nest 5 layers of wrapper components. blaze-motion spreads straight into your tags so your layout never breaks.
Test every preset in the live sandbox.
Click any preset to see its motion curve, inspect target properties, and copy the ready-to-spread JSX.
Three steps. In your codebase in 30 seconds.
Built as a copy-paste shadcn registry distribution. The code lives in your repo at your paths.
Run the CLI
Downloads the core engine, 14 presets, and 97 element exports directly into your lib/motion/ folder.
Official shadcn registry distribution
Mount the Provider
Wrap your root layout with <MotionProvider>. It asynchronously loads motion features and respects OS reduced-motion settings.
// app/layout.tsx
import { MotionProvider } from "@/lib/motion";
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body>
<MotionProvider>{children}</MotionProvider>
</body>
</html>
);
}Spread onto Elements
Import capitalized HTML elements and spread presets directly. No wrappers, no extra `div` layers, and complete layout fidelity.
// components/feature-hero.tsx
import { Div, H1, P } from "@/lib/motion";
import { fadeUp } from "@/lib/motion/presets/fade-up";
import { slideUp } from "@/lib/motion/presets/slide-up";
export function FeatureHero() {
return (
<Div {...slideUp} className="container py-12">
<H1 {...slideUp} className="text-h1 font-bold">
Next-Gen Experience
</H1>
<P {...fadeUp} className="text-lead text-ink-soft">
Animated seamlessly with zero wrapper divs.
</P>
</Div>
);
}Your config.ts is 100% yours and never overwritten
When you pull updated presets, your custom timing values, easing curves, and travel tokens remain permanently preserved.
Frequently asked technical details.
Everything you need to know about the preset-spread engine, SSR guarantees, and accessibility.
Stop wrapping divs.
Start spreading motion.
Install the complete motion engine, 14 production presets, and 97 animated HTML elements directly into your repository with one command.