Desktop optimized

Please maximize your browser window or use a larger screen to explore the component library.

Go to home

Flex Carousel

A high-performance WebGL horizontal carousel. Integrates aerodynamic bending, kinetic RGB splitting, dynamic shadowing, and smooth SDF corner radiuses calculated entirely on the GPU.

Last Modified:Aug 17, 2026

Install

CLI

flex-carousel
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flex-carousel.json

Or install a specific demo variant:

flex-carousel-demo
$pnpm dlx shadcn@latest add https://ui.satisium.com/r/flex-carousel-demo.json

Manual

1. Install Dependencies

Dependencies
$pnpm add three @react-three/fiber @react-three/drei gsap @gsap/react clsx tailwind-merge

2. Add Source Code

Props

PropTypeDefaultDescription
imagesstring[]RequiredArray of image URLs to load into the deck.
cardWidthRationumber0.35Percentage of screen width the card occupies on desktop.
cardAspectRationumber1.4Width-to-height ratio of the cards.
gapMultipliernumber0.36Space between cards relative to viewport width.
scrollSensitivitynumber0.04How heavily the scroll wheel affects movement.
lerpFactornumber0.08How buttery smooth the momentum is (0.01 to 1).
flexMultipliernumber0.25Aerodynamic bending intensity.
rotationMultipliernumber0.02Baseline rotation facing the center.
parallaxIntensitynumber0.05Internal parallax sliding intensity.
chromaticAberrationIntensitynumber0.005The intensity of the kinetic RGB color splitting.
dimmingMultipliernumber0.015Edge darkening on movement/curvature.
cornerRadiusnumber0.04SDF Corner Radius.