Sharpen in
The content resolves from an 8px blur as it mounts.
Installation
npx logic2b@next add motion-blurUsage
import { MotionBlur } from "@/components/ui/motion-blur"
<MotionBlur duration={700}>
<h2>Sharpen in</h2>
</MotionBlur>
MotionBlur is <Motion preset="blur"> — see
Motion for the shared duration, delay, hover
and asChild props, exit recipes and reduced-motion behavior. It pairs well
with a longer duration on headings and hero copy.
Live playground
Edit the component props and inspect the exact JSX before copying it. The preview loads only when this section enters the viewport.
<MotionBlur
duration={500}
delay={0}
>Blur reveal</MotionBlur>API reference
Generated from the public TypeScript exports in src/ui/motion-blur.tsx.
MotionBlurProps
Typetype MotionBlurProps = Omit<MotionProps, "preset">MotionBlur
ComponentSharpen a mounting element in from an 8px blur. Preconfigured `<Motion preset="blur">`.
Props: MotionBlurPropsAccessibility contract
Machine-readable behavior and consumer responsibilities for motion-blur.
- Support
- Composition contract
- Pattern
- blur animation
- Motion for React
Built-in semantics
- Preserves child semantics and accepts reduced-motion behavior from the motion foundation.
Consumer responsibilities
- Ensure final text is sharp, contrast remains sufficient and reduced-motion users receive an instant transition.
Known limitations
- • Blurred text can be temporarily unreadable during animation.