One payment of $4.99, yours forever. Use it in unlimited personal and commercial projects; no resale.
React component with TypeScript types (slides, onChange), the shared WebGL core and the GLSL source
Ripple, Mosaic and Ink transitions on top of Flow
The vanilla Web Component with every transition, a demo page, README and license
Attributes & props
Name
Type
Default
Description
<img> children
src, alt, data-title, data-tag
—
One per slide. Same-origin images, or add crossorigin and serve them with CORS.
theme
'light' | 'dark'
'dark'
Frame, shadow and glass buttons. Captions stay white over the photo.
autoplay
seconds
0
Advance on a timer; pauses on hover, focus, drag and off-screen.
ratio
CSS aspect-ratio
'16/10'
Shape of the frame, e.g. 4/5 or 1/1.
radius
number (px)
28
Corner radius.
speed
number
1
Transition speed multiplier.
label
string
'Photo carousel'
Accessible name of the region.
preset Pro
'flow' | 'ripple' | 'mosaic' | 'ink'
'flow'
Transition style. Free build ships Flow only.
Swipe, drag, tap (advances, rippling from the finger), arrow keys or the progress bars — every one of them drives the same transition, and a drag stays under the finger until you let go. RGB split grows with swipe speed. Emits a change event (detail.index); next(), prev() and go(i) are methods on the element. Without WebGL, or with cross-origin images lacking CORS, it falls back to a cross-fade. Under reduced motion it switches instantly and autoplay stays off.