Vue Draggable Carousel Demo

Vue client component as carousel items

<Carousel v-bind="{ itemsPerSlide, itemMarginRightInPx, withArrows }">
  <Item v-for="item in items" :key="item.id" :item="item" />
</Carousel>

Support to HTML anchor

<Carousel
   :itemsPerSlide="4"
   :itemMarginRightInPx="5"
   :withPagination="false"
   :slidingAnimationTimeInMs="1000"
   :minDraggingDisplacementInPx="20"
>
   <article v-for="i in 15" :key="i">
      <a href="https://empathy.co">
        <img :src="`https://picsum.photos/id/1${i}/200/200`" alt="" style="width:100%" />
        <p style="text-align: center">Image footer</p>
      </a>
   </article>
</Carousel>

HTML elements & Vue client components

<Carousel
   :itemsPerSlide="3"
   :itemMarginRightInPx="3"
   :withPagination="true"
   :withArrows="false"
   :slidingAnimationTimeInMs="100"
   :minDraggingDisplacementInPx="60"
   :navigationButtonIcon="arrowIconComponent"
>
    <Item :item="items[3]" />
    <p class="app-demo-container-text">
       Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
       ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
       ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </p>
    <Item :item="items[6]" />
    <h3 class="app-demo-container-text">
       Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
       ut labore et dolore magna aliqua.
    </h3>
    <Item :item="items[12]" />
    <span class="app-demo-container-text">
       Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
       ut labore et dolore magna aliqua.
    </span>
    <Item :item="items[15]" />
    <h1 class="app-demo-container-text">
       Lorem ipsum dolor sit amet, consectetur adipiscing elit
    </h1>
</Carousel>