Reviews Carousel
betaTestimonials stacked in depth — the active review in front, the next ones receding behind — stepped through with buttons, indicators or arrow keys.
- Display
- 2 files
- 1 npm package
- Accessibility notes
pnpm dlx @dowel-ui/cli add reviews-carouselnpm packages installed: class-variance-authority.
import { ReviewsCarousel } from "@/components/ui/reviews-carousel";Default
Gallery
With Avatars
Looping
Controlled
Right To Left
<ReviewsCarousel>
| Prop | Type | Default |
|---|---|---|
reviews (required) | Review[] | — |
autoPlayAdvances on a timer, with a stop/start control; never starts by itself under reduced motion. | boolean | false |
autoPlayIntervalMilliseconds per review while playing. | number | 5000 |
defaultIndexInitial active review when uncontrolled. | number | — |
indexControlled active review. | number | — |
labelsVisible and accessible text, for localisation. | Partial<ReviewsCarouselLabels> | — |
loopWrap from the last review to the first. The source stops at the ends. | boolean | false |
onIndexChange | (index: number) => void | — |
showIndicators | boolean | true |
showNavigation | boolean | true |
Plus every attribute of <section> except children.
10/10
checks passed
- Tested — passes
- axe assertion — passes
- Keyboard tested — passes
- Storybook examples — passes
- Accessibility documented — passes
- Semantic tokens only — passes
- Motion from tokens — passes
- className merged — passes
- Visible focus — passes
- No fixed widths — passes