Card Spread

A fanned deck of cards that spreads open on hover

Glass atrium seen from below
Corporate tower against an open sky
White concrete facade in daylight
Repeating window lattice on a high rise
Terraced building stepping into the sky
Row of arches along a shaded walkway
Steel canopy over a public square

Customize

Arc
88
Radius
440
Card Width
168
Card Height
252
Card Radius
12
Card Padding
0
Shadow
0.28
Lift
26
Push
3.6
Push Reach
3
Rest Opacity
1.00
Stiffness
150
Damping
16
Mass
1.0
Stagger
0.06
Max Scale
1.00
Card Color
Border Color

Props

23
cardsCardSpreadCard[]

Images laid out along the arc, left to right. Each entry takes src, alt and an optional id.

Default7 images
cardWidthnumber

Width of a single card in pixels.

Default168
cardHeightnumber

Height of a single card in pixels.

Default252
cardRadiusnumber

Corner radius of a card in pixels.

Default12
radiusnumber

Radius of the invisible circle the cards hang from. Larger values flatten the fan.

Default440
arcnumber

Total angle the fan covers, in degrees.

Default88
cardColorstring

Frame colour behind each image.

Default"#ffffff"
cardPaddingnumber

Padding between the frame edge and the image, in pixels.

Default0
borderColorstring

Hairline border drawn around each card.

Default"transparent"
shadownumber

Drop shadow strength. Set to 0 to remove it.

Default0.28
liftnumber

How far a hovered card slides outward along its own axis, in pixels.

Default26
pushnumber

Degrees the nearest neighbour is pushed aside on hover.

Default3.6
pushReachnumber

How many neighbours on each side react to a hover.

Default3
restOpacitynumber

Opacity applied to the cards that are not hovered.

Default1
stiffnessnumber

Spring stiffness of the fan and hover motion.

Default150
dampingnumber

Spring damping. Lower values overshoot further.

Default16
massnumber

Spring mass of the fan and hover motion.

Default1
staggernumber

Seconds between each card fading in on mount.

Default0.06
fitboolean

Scale the whole fan down so it always fits the container.

Defaulttrue
maxScalenumber

Upper bound applied to the fit scale.

Default1
interactiveboolean

Enable pointer and keyboard interaction.

Defaulttrue
classNamestring

Optional className applied to the root.

Default-
styleCSSProperties

Optional inline style applied to the root.

Default-