Circles

Rotating orbital rings with images and customizable animations

circles-tw
  • Circle 0-0
  • Circle 0-1
  • Circle 0-2
  • Circle 0-3
  • Circle 0-4
  • Circle 0-5
  • Circle 1-0
  • Circle 1-1
  • Circle 1-2
  • Circle 1-3
  • Circle 1-4
  • Circle 1-5
  • Circle 1-6
  • Circle 1-7
  • Circle 1-8
  • Circle 2-0
  • Circle 2-1
  • Circle 2-2
  • Circle 2-3
  • Circle 2-4
  • Circle 2-5
  • Circle 2-6
  • Circle 2-7
  • Circle 2-8
  • Circle 2-9
  • Circle 2-10
  • Circle 2-11
  • Circle 2-12
  • Circle 2-13
  • Circle 2-14
  • Circle 3-0
  • Circle 3-1
  • Circle 3-2
  • Circle 3-3
  • Circle 3-4
  • Circle 3-5
  • Circle 3-6
  • Circle 3-7
  • Circle 3-8
  • Circle 3-9
  • Circle 3-10
  • Circle 3-11
  • Circle 3-12
  • Circle 3-13
  • Circle 3-14
  • Circle 4-0
  • Circle 4-1
  • Circle 4-2
  • Circle 4-3
  • Circle 4-4
  • Circle 4-5
  • Circle 4-6
  • Circle 4-7
  • Circle 4-8
  • Circle 4-9
  • Circle 4-10
  • Circle 4-11
  • Circle 4-12
  • Circle 4-13
  • Circle 4-14

Customize

Layout

64
120
100
0

Rotation

20
0.5

Fade

Entrance Animation

0.6
0.15

Props

rowsstring[][]

Array of rows, where each row is an array of image URLs. Each row creates a concentric orbit ring with evenly distributed circles.

Default:[[...], [...], [...]]
circleSizenumber

Size of each circle/image in pixels

Default:64
baseRadiusnumber

Base radius for the innermost orbit ring in pixels

Default:120
orbitGapnumber

Gap between each concentric orbit ring in pixels

Default:100
rotationDurationnumber

Duration of one complete rotation in seconds for the first ring

Default:20
rowDelaynumber

Additional duration added to each subsequent ring's rotation (creates staggered speed)

Default:0.5
direction"clockwise" | "counterclockwise"

Direction of rotation for the orbiting circles

Default:"clockwise"
alternateDirectionboolean

If true, alternates direction for each row (odd rows go opposite direction)

Default:false
fadeMode"in" | "out" | "none"

Fade mode for rows. 'in' fades from outside to inside, 'out' fades from inside to outside, 'none' disables fading

Default:"none"
fadeBlurboolean

Apply incremental blur along with fade effect for more depth

Default:false
showPathsboolean

Whether to show dashed orbital path rings

Default:true
animateboolean

Enable entrance animation on mount with scale and fade

Default:true
animationDurationnumber

Duration of entrance animation in seconds

Default:0.6
animationStaggernumber

Stagger delay between each row's entrance animation in seconds

Default:0.15
staggerScaleFactornumber

Scale factor for each additional row. Negative values shrink outer rows, positive values grow them. Example: 0.1 = 10% larger per row

Default:0
classNamestring

Additional CSS classes for the container

Default:""