All components
Vertical Autoplay Thumbnail Slider
carouselsUi-Layouts component.
responsive · 580px
Install
Same command in any shadcn project — React (Vite/CRA), Next.js, Remix, Astro, and more:
$
npx shadcn@latest add https://your-domain/r/vertical-thumbnail-autostart-slider.jsonUsage
import Cmp from "@/registry/ui-layouts/verticalthumbs-autostart-slider";
export default function Demo() {
return <Cmp />;
}Component source
'use client';
import {
Carousel,
Slider,
SliderContainer,
SliderDotButton,
ThumbsSlider,
} from '@/registry/ui-layouts/carousel';
import type { EmblaOptionsType } from 'embla-carousel';
import Autoplay from 'embla-carousel-autoplay';
import React, { ReactNode } from 'react';
function VerticalthumbsAutostartSlider() {
const OPTIONS: EmblaOptionsType = {
loop: false,
axis: 'y',
};
return (
<>
<div className='py-10'>
<Carousel
options={OPTIONS}
plugins={[
Autoplay({
playOnInit: true,
delay: 2000,
stopOnMouseEnter: false,
stopOnInteraction: false,
}),
]}
dir='ltr'
className='relative h-full'
>
<SliderContainer className='h-[400px]'>
<Slider
className='w-full h-full'
thumbnailSrc='https://images.unsplash.com/photo-1759395073808-17782f3d8d66?q=80&w=1471&auto=format&fit=crop'
>
<img
src='https://images.unsplash.com/photo-1759395073808-17782f3d8d66?q=80&w=1471&auto=format&fit=crop'
alt='Slide 1'
className='h-full w-full object-cover rounded-lg'
/>
</Slider>
<Slider
className='w-full h-full'
thumbnailSrc='https://images.unsplash.com/photo-1759434192768-fe3facebd5f6?q=80&w=1471&auto=format&fit=crop'
>
<img
src='https://images.unsplash.com/photo-1759434192768-fe3facebd5f6?q=80&w=1471&auto=format&fit=crop'
alt='Slide 2'
className='h-full w-full object-cover rounded-lg'
/>
</Slider>
<Slider
className='w-full h-full'
thumbnailSrc='https://images.unsplash.com/photo-1758641008040-28cdd59ca8fb?q=80&w=687&auto=format&fit=crop'
>
<img
src='https://images.unsplash.com/photo-1758641008040-28cdd59ca8fb?q=80&w=687&auto=format&fit=crop'
alt='Slide 3'
className='h-full w-full object-cover rounded-lg'
/>
</Slider>
<Slider
className='w-full h-full'
thumbnailSrc='https://images.unsplash.com/photo-1618220649687-ba860f3176e7?q=80&w=1474&auto=format&fit=crop'
>
<img
src='https://images.unsplash.com/photo-1618220649687-ba860f3176e7?q=80&w=1474&auto=format&fit=crop'
alt='Slide 4'
className='h-full w-full object-cover rounded-lg'
/>
</Slider>
<Slider
className='w-full h-full'
thumbnailSrc='https://images.unsplash.com/photo-1525310072745-f49212b5ac6d?q=80&w=765&auto=format&fit=crop'
>
<img
src='https://images.unsplash.com/photo-1525310072745-f49212b5ac6d?q=80&w=765&auto=format&fit=crop'
alt='Slide 5'
className='h-full w-full object-cover rounded-lg'
/>
</Slider>
</SliderContainer>
<ThumbsSlider
className='absolute right-4 top-1/2 -translate-y-1/2 w-20'
thumbsSliderClassName='border-black'
/>
</Carousel>
</div>
</>
);
}
export default VerticalthumbsAutostartSlider;Dependencies
embla-carousellucide-reactembla-carousel-class-namesembla-carousel-reactembla-carousel-autoplaymotion
Source: Ui-Layouts