- Docs
- Components
- 3D & Shaders
- Circle Stack
Circle Stack
A tilted stack of circles that cycles through your images
circle-stack-tw
Customize
Disc Size
410px
Tilt
60°
Stack Gap
45px
Border Width
2px
Interval
4.0s
Transition Duration
0.90s
Surface Color
Border Color
Props
13| Name | Type | Default | Description |
|---|---|---|---|
items | CircleStackItem[] | 3 sample images | Discs to render. Each item: { id?, image, alt? }. |
size | number | 410 | Diameter of each disc in pixels. |
tilt | number | 60 | Disc tilt in degrees. 0 = flat circle, 90 = edge-on. |
stackGap | number | 45 | Vertical separation between adjacent discs in pixels. |
interval | number | 4 | Seconds between active-index advances. |
transitionDuration | number | 0.9 | Seconds for the lift / settle transition. |
paused | boolean | false | Pause the auto-cycle. |
surfaceColor | string | "#FFFFFF" | CSS color for the disc surface (top face). |
borderColor | string | "#000000" | CSS color for the disc border ring. |
borderWidth | number | 1 | Border thickness in pixels. |
className | string | undefined | Class applied to the root element. |
style | CSSProperties | undefined | Inline style applied to the root element. |
onActiveChange | (index: number) => void | undefined | Fires when the active disc index changes. |
itemsCircleStackItem[]Discs to render. Each item: { id?, image, alt? }.
Default
3 sample imagessizenumberDiameter of each disc in pixels.
Default
410tiltnumberDisc tilt in degrees. 0 = flat circle, 90 = edge-on.
Default
60stackGapnumberVertical separation between adjacent discs in pixels.
Default
45intervalnumberSeconds between active-index advances.
Default
4transitionDurationnumberSeconds for the lift / settle transition.
Default
0.9pausedbooleanPause the auto-cycle.
Default
falsesurfaceColorstringCSS color for the disc surface (top face).
Default
"#FFFFFF"borderColorstringCSS color for the disc border ring.
Default
"#000000"borderWidthnumberBorder thickness in pixels.
Default
1classNamestringClass applied to the root element.
Default
undefinedstyleCSSPropertiesInline style applied to the root element.
Default
undefinedonActiveChange(index: number) => voidFires when the active disc index changes.
Default
undefined