# Shadcn Dots Navigation

> Carousel with dots navigation and content overlays

- Type: example, free and open source (MIT)
- Component: [Carousel](https://reui.io/components/carousel.md)
- Page: https://reui.io/components/carousel/c-carousel-11
- Docs (Base UI): https://ui.shadcn.com/docs/components/base/carousel.md
- Docs (Radix UI): https://ui.shadcn.com/docs/components/radix/carousel.md
- MCP: `get_example("c-carousel-11")`
- Registry item: https://reui.io/r/styles/base-nova/c-carousel-11.json
- Uses: Card, Carousel

## Best for

Square captioned slides with a row of dots under them, the active dot stretched wider, and no arrow buttons

## Agent notes

- `count` is read from `scrollSnapList` once when `api` arrives, so the dot total goes stale if slides per view change on resize
- The active dot differs only in width and color; add aria-current to the dot whose index equals `current`

## When not to use

- A gallery where each slide needs a small preview image to pick it from: use [Thumbnail Strip](https://reui.io/components/carousel/c-carousel-9.md) (`get_example("c-carousel-9")`)

## Third-party libraries

- Embla Carousel v8: [API reference](https://www.embla-carousel.com/docs/v8/api), [docs](https://www.embla-carousel.com/docs/v8/get-started/react), through shadcn Carousel

## Install

```bash
npx shadcn@latest add @reui/c-carousel-11
```

## About Shadcn Carousel

### When to use

- Photo galleries and featured slides shown one at a time, moved by swipe, arrow buttons or a timer
- Rows or columns of cards with several in view, sized per breakpoint or peeking at the next one
- Media viewers where a thumbnail strip or a row of dots tracks the current slide and jumps to any one

### When not to use

- A rotating set of customer testimonials with star ratings and avatars: use the [Review blocks](https://reui.io/blocks/ecommerce/review.md)
- A shop page pairing a photo gallery with a buy box and size and color pickers: use the [Product Detail blocks](https://reui.io/blocks/ecommerce/product-detail.md)
- A storefront section of shop collections with hover browse buttons: use the [Category Card blocks](https://reui.io/blocks/ecommerce/category-card.md)

### Agent notes

- Every slide is a `picsum.photos` placeholder built with `Array.from`; map your own images and alt text from a real array
- Where `CarouselPrevious` and `CarouselNext` are placed, they sit 3rem outside the slides at either end, so leave room or move them through `className`
- `Carousel` reacts only to `ArrowLeft` and `ArrowRight`, vertical ones included, and only while focus sits on a control inside it

Every ReUI item has a twin like this one; the index is https://reui.io/llms.txt. Agents with the ReUI MCP (https://reui.io/docs/mcp) get the same guidance from the getters named above.
