Measured entry
ruixen-featured-portrait-testimonial
testimonialsunclassifiedmotion on file
A client-side React testimonial carousel that pairs an active quote card with an animated row of selectable portrait cards, keyboard navigation, author avatars, company marks, and optional feature tags. It ships as a shadcn registry component and relies on Tailwind utility and theme classes, the shadcn Avatar primitive, a cn helper, and Lucide icons.



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.
| Build | OK |
|---|---|
| Mount | OK |
| Console errors | 5 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 1 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 38.5 KB (104.2 KB build, 65.7 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
Verdict
A credible choice for a high-visibility testimonial section: it builds, mounts, and adapts across the tested layouts. It needs a shadcn-style setup. Fix the flagged text contrast, add reduced-motion behavior, and replace the missing demo portrait paths before shipping.
Use it if
- Your marketing page has several portrait-led testimonials and room for a prominent split layout.
- You want click and arrow-key selection without adding a carousel provider or motion runtime.
- Your content model can supply stable portrait URLs, author details, and optional company icons or feature tags.
Skip it if
- You need a compact quote rotator for a dense or space-constrained surface.
- Your project cannot adopt shadcn aliases, theme tokens, an Avatar primitive, and a shared class helper.
- You need an accessibility-ready component without edits, since the tested styling has a serious text contrast issue.
- Your motion policy requires reduced-motion handling, which the component does not include.
- Your portrait assets are not ready, since missing demo images produced failed requests and weaken the core presentation.
Install
| Declared dependencies | lucide-react, radix-ui, clsx, tailwind-merge |
|---|---|
| Missing on install | none |
| Bare install | fails once the shadcn-style helpers are removed, so it needs that setup |
| Provider | no provider required in the harness |
In a non-shadcn project, install Lucide React, Radix UI, clsx, and tailwind-merge; provide compatible Avatar components and a cn utility; configure the at-sign import alias, Tailwind theme tokens, dark mode, responsive utilities, and the animation classes used by the crossfade. Add real portrait assets and verify their URLs.
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.
Author repository
github.com/ruixenui/ruixen.comAlternatives
Other published entries for the testimonials pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- tailark-mist-testimonials-1minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.6KB
- Bare
- pass
- Prov
- NO
- meraki-testimonials-sliderminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 18.2KB
- Bare
- pass
- Prov
- NO
- meraki-testimonials-centeredminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 18.4KB
- Bare
- pass
- Prov
- NO
- meraki-testimonials-full-page-cardsminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 18.7KB
- Bare
- pass
- Prov
- NO
- tailark-veil-testimonials-4minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 23.7KB
- Bare
- pass
- Prov
- NO
- tailark-veil-testimonials-3minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 23.8KB
- Bare
- pass
- Prov
- NO