OPUS/UI

Navigation

Ripple Rings

Concentric rings breathing in a staggered wave, fading downward — a calm focal backdrop for a logo, avatar or call-to-action.

csszero-jsrsc2 files · 67 locdeps: clsx, tailwind-merge

Installation

With the shadcn CLI, pointing at this platform’s registry:

npx shadcn@latest add https://opusui.131199999.xyz/r/ripple-rings.json

Or offline, straight from your opus55 checkout (copies every file it needs):

node ../tailwind_component/opus55/scripts/add.mjs ripple-rings

Usage

import { RippleRings } from "@/components/opus/backgrounds/ripple-rings";

<RippleRings className="absolute inset-0" />

API

PropTypeDefaultDescription
colorstring—Ring colour — use rgba(…, 1) so the inner glow can derive its alpha.
rings / base / stepnumber8 / 180 / 90Count, first diameter and growth (px).
durationnumber3.4Seconds per breath.
classNamestring—Wrapper classes — `absolute inset-0` to fill a relative parent.
childrenReactNode—Content rendered on top.

Notes

  • No canvas, no WebGL — only CSS gradients/masks and compositor-friendly transform animations.
  • Server-component safe unless marked otherwise; animations stop under prefers-reduced-motion.

Command palette