FX · Backgrounds

Out-of-focus light orbs, breathing and drifting.

City lights

bash
npx shadcn@latest add https://www.rad-ui.com/r/bokeh.json
React
import Bokeh from "@/components/fx/bokeh" <Bokeh className="px-8 py-24"> <h2>Your content</h2> </Bokeh>
  • The effect layer is aria-hidden and ignores pointer events; only children are exposed.
  • Pauses offscreen; `paused` stops it on demand (wire it to a visible control if it runs behind reading content).
  • prefers-reduced-motion: reduce (or data-rad-fx-motion="reduce" on an ancestor) holds the orbs still.
PropTypeDefaultDescription
count
number
16

Number of orbs.

colors
string[]
amber, pink, blue

Orb colours.

seed
number
6

Change for a different, stable layout.

paused
boolean
false

Stop the animation. It also pauses offscreen.

...props
ComponentProps<'div'>
—

Passed to the root div; children render above.