Ballmac UI home

Blur Fade

A wrapper that fades content in while it unblurs and slides a few pixels, once it scrolls into view, with a group that staggers its children.

New in 2.4

Ship faster, with less to configure

Everything below fades in one after the other, with a short blur that clears as each piece settles.

Fast builds
Typed APIs
Dark mode
Stays still when reduced motion is on.

Installation

$ pnpm dlx shadcn@latest add @ballmac/blur-fade

Usage

import { BlurFade, BlurFadeGroup } from "@/components/ballmac/blur-fade"

The full example is in the Code tab above.

Examples

Directions and blur

direction

up

direction

down

direction

left

direction

right

API reference

<BlurFade>

PropTypeDefault
delay

Seconds to wait before starting.

number0
duration

Seconds the fade takes.

number0.5
direction

Where the content travels from. "none" only fades and unblurs.

"up" | "down" | "left" | "right" | "none""up"
offset

Distance in pixels travelled while fading in.

number10
blur

Starting blur in pixels.

number8
inView

Wait until the element scrolls into view before playing.

booleantrue
once

Play only the first time it enters the view.

booleantrue
as

Element to render.

BlurFadeTag"div"

<BlurFadeGroup>

PropTypeDefault
stagger

Seconds between each child.

number0.08
delay

Seconds before the first child starts.

number0
item

Settings passed to every child's BlurFade.

Pick<BlurFadeProps, "direction" | "offset" | "blur" | "duration" | "inView" | "once">—
itemAs

Element each child is wrapped in.

BlurFadeTag"div"

Also accepts the standard attributes of its root element.

Accessibility

KeyAction
Reduced motionContent appears at once with no blur or travel
Screen readersContent is in the DOM from the start; only opacity, blur and position change

Use with AI

Wrap anything in <BlurFade delay direction offset blur inView once>. <BlurFadeGroup stagger> wraps each child and staggers them. Shows content instantly under reduced motion. With the shadcn MCP server set up (guide), ask your agent:

Add the Ballmac UI Blur Fade (@ballmac/blur-fade) to this project with the shadcn MCP, then use it where it fits.

Use it for

  • Hero and section intros
  • Lists and cards that should arrive in sequence

Not for

  • Text that should animate letter by letter (text-animate)
  • Content that must be visible without JavaScript before hydration

Registry JSON: https://ui.ballmac.com/r/blur-fade.json

Credits

Free to use in personal and commercial projects.

Registry
shadcn/utils