Getting Started
Scroll Animations
Text Animations
Hover & Cursor
Sliders & Carousels
Galleries & Grids
Menus & Navigation
Preloaders & Intros
Page Transitions
3D & WebGL
import { AccordionImageFrames } from "@/registry/tween/accordion-image-frames"
export function AccordionImageFramesDemo() {
return (
<div className="w-full">
<AccordionImageFrames />
</div>
)
}
import { AccordionImageFrames } from "@/components/ui/accordion-image-frames"<AccordionImageFrames
images={[
"https://images.unsplash.com/photo-1523516118247-bd68d99e83c2?q=80&w=800&h=800&fit=crop&crop=center&auto=format",
"https://images.unsplash.com/photo-1643925690746-9eb744dae41b?q=80&w=800&h=800&fit=crop&crop=center&auto=format",
]}
panelCount={16}
expandedWidth={360}
/>left and width are computed in render: the focused panel gets expandedWidth, every other panel collapsedWidth, with gap between them, and the whole row is centred in the track.1s cubic-bezier(0.075, 0.82, 0.165, 1)) springs every panel to its new spot.prefers-reduced-motion: reduce the panels snap without transitioning.| Prop | Type | Default | Description |
|---|---|---|---|
images | string[] | 12 dune photos | Images cycled across the panels. |
panelCount | number | 20 | Panels above the 1000px container breakpoint. |
panelCountMobile | number | 10 | Panels below the breakpoint. |
collapsedWidth | number | 20 | Collapsed panel width in px. |
expandedWidth | number | 400 | Focused panel width in px. |
expandedWidthMobile | number | 100 | Focused panel width in px below the breakpoint. |
gap | number | 5 | Gap between panels in px. |
background | string | "#120e0a" | Section background. |
frameColor | string | "#f3e4c8" | Focus frame and guide-line color. |
className | string | — | Extra classes on the section. |