Measured entry

hextaui-carousel

carouselminimal-flatmotion on file

A client-side React carousel assembled from composable container, track, slide, and navigation components. It ships as shadcn registry source rather than a packaged widget, using Embla for movement, Lucide icons, a registry Button, Tailwind classes, and a local class-merging helper.

Specimen
Motion capture of the mounted demo, recorded by the harness. No audio track.
Harness screenshot of hextaui-carousel at 375 pixels wide
Harness screenshot at 375 pixels wide. This viewport scrolled sideways.
Harness screenshot of hextaui-carousel at 768 pixels wide
Harness screenshot at 768 pixels wide. No horizontal overflow recorded.
Harness screenshot of hextaui-carousel at 1440 pixels wide
Harness screenshot at 1440 pixels wide. No horizontal overflow recorded.

Measured

Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.

Harness measurements recorded for hextaui-carousel
BuildOK
MountOK
Console errors0
Uncaught page errors0
Horizontal overflowflagged at 375
Axe critical0
Axe serious0
Axe moderate0
Axe minor0
Gzip marginal41.2 KB (106.7 KB build, 65.5 KB baseline)
Bare modeFAIL
Provider requiredNO
Demo usedwritten from the component source API

What the harness recorded

BARE BUILD

✗ Build failed in 910ms
error during build:
[vite]: Rollup failed to resolve import "lucide-react" from "<sandbox>re-92872c6ac47c/src/cut/components/ui/carousel.tsx".

Verdict

A sound source-owned carousel with a clean mount, working controls, and no detected accessibility violations. It is a good fit for Tailwind React systems, but the supplied composition overflows at the narrow viewport, so responsive sizing and navigation placement need attention before adoption.

Use it if

  • You want source-owned carousel primitives that can render horizontal or vertical tracks.
  • You need keyboard navigation, disabled boundary controls, and access to the underlying Embla API.
  • Your interface already uses Tailwind utilities and shadcn-style component conventions.

Skip it if

  • Your layout must remain overflow-free on narrow screens without adjusting the demo width, padding, or control placement.
  • You want a dependency-light static scroller and do not need Embla behavior.
  • Your design system cannot absorb a local Button primitive, Lucide icons, and utility-class styling.

Install

Installation record for hextaui-carousel
Declared dependenciesembla-carousel-react, @radix-ui/react-slot, clsx, tailwind-merge
Missing on installnone
Bare installfails once the shadcn-style helpers are removed, so it needs that setup
Providerno provider required in the harness

In a non-shadcn React project, add Embla Carousel React and Lucide React, provide an equivalent Button component and class-merging helper, enable the referenced Tailwind utilities, preserve the client-component boundary, and replace the registry import aliases with local paths.

Source and credit

This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.

License
MIT
Record published
2026-08-16

Alternatives

Other published entries for the carousel pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.