GodUI

Orbiting Circles

Icons that orbit a center point on a configurable ring, staying upright as they travel.

GodUI

Installation

pnpm dlx shadcn@latest add "https://godui.design/r/orbiting-circles.json"

Children are spread evenly around a ring of radius. A single ring animation carries every slot in lockstep while each slot counter-rotates so its content stays upright. The orbit pauses entirely under prefers-reduced-motion.

Usage

tsx
 
import { OrbitingCircles } from "@/components/godui/orbiting-circles";
tsx
 
<OrbitingCircles radius={120} duration={20}>
  <Icon />
  <Icon />
  <Icon />
</OrbitingCircles>

Reversed inner ring

Stack two rings with different radius, duration, and reverse for a layered ecosystem diagram.

1
2
3
4
5

Props

PropTypeDefaultDescription
radiusnumber120Orbit radius in pixels.
durationnumber20Seconds per full revolution.
delaynumber0Delay before the orbit starts, in seconds.
reversebooleanfalseReverse the orbit direction.
showPathbooleantrueRender the faint circular track.
iconSizenumber40Size of each orbiting slot in pixels.

OrbitingCircles also forwards every standard <div> attribute to the root element.

On this page

Built with GodUI

Beautifully crafted motion components for modern interfaces.

Star on GitHub