Command Palette

Search for a command to run...

2.3kGitHub stars
Components

Apple Carousel

Infinite autoplay carousel with progress dots, inspired by Apple’s website.

Loading…

Features

  • Loops endlessly, with neighboring cards peeking in.
  • Autoplays with a progress dot, and pauses on interaction or when off screen.
  • Swipe, scroll, click a dot, or use arrow keys, even mid-slide.
  • Respects reduced motion: no autoplay until Play is pressed, and cards jump instead of sliding.

Installation

pnpm dlx shadcn@latest add @ncdai/apple-carousel

Usage

import {
  AppleCarouselContent,
  AppleCarouselControls,
  AppleCarouselItem,
  AppleCarouselPlayButton,
  AppleCarouselRoot,
  AppleCarouselTab,
  AppleCarouselTabList,
} from "@/components/apple-carousel"
<AppleCarouselRoot>
  <AppleCarouselContent>
    <AppleCarouselItem />
  </AppleCarouselContent>
 
  <AppleCarouselControls>
    <AppleCarouselTabList aria-label="Featured">
      <AppleCarouselTab />
    </AppleCarouselTabList>
    <AppleCarouselPlayButton />
  </AppleCarouselControls>
</AppleCarouselRoot>

Items are empty cards for any content. Render one AppleCarouselTab per item, in the same order, with a label for screen readers.

Composition

Use the following composition to build an AppleCarousel

AppleCarouselRoot
├── AppleCarouselContent
│   └── AppleCarouselItem
└── AppleCarouselControls
    ├── AppleCarouselTabList
    │   └── AppleCarouselTab
    └── AppleCarouselPlayButton

API reference

AppleCarouselRoot

Prop

Type

useAppleCarouselItem

Reads the state of the enclosing AppleCarouselItem.

Prop

Type

Data attributes

Style content by state, for example with in-data-current:opacity-100.

AttributeElementPresent when
data-currentAppleCarouselItem, AppleCarouselTabThe item or tab is shown.
data-cloneAppleCarouselItemThe item is a clone.
data-indexAppleCarouselItemAlways.
data-playingAppleCarouselRootAutoplay is running.

Examples

Caption

A caption and Button over each photo. data-current fades captions on peeking cards, and dark keeps text light in both themes.

Loading…

Credits

References

Was this helpful?

Command Palette

Search for a command to run...