Skip to content
UI Kit
Accent color

Testimonials and customer quotes

Quotes, reviews, ratings, videos and posts from the people who use it.

11 variants
Switch category

One strong quote or a wall of them

Testimonials let other people say what you cannot say about yourself. The eleven layouts here take quotes, names, roles, photos and ratings as data, and every rating is written out for screen readers instead of five bare stars.

Single quote is the strongest choice when you have one quote that says everything. Hairline grid and Masonry show six to twelve voices for products with many customers. Carousel and Marquee keep a long list in a small space, With rating summary adds the average and the count. Video quotes and Social posts bring proof that looks unedited, Case study quotes connect a quote with a number.

Use real names and roles, a quote without a person is worth little. Short quotes with one concrete result beat long praise. Put the section close to the action you want, right before pricing or the contact form, where doubt is highest.

Testimonials

Hairline grid

Quotes in a seamless grid, the first one larger.

Open in Studio

Masonry

Cards in columns of different heights, like a wall of notes.

Open in Studio

Single quote

One quote as the headline of the section, with logo.

Open in Studio

Marquee

Two rows drift in opposite directions and pause under the pointer.

Open in Studio

With rating summary

Average, star distribution and the reviews next to it.

Open in Studio

Portrait switcher

One quote at a time, the portraits below act as tabs.

Open in Studio

Video quotes

Posters with a play button, the video opens in a dialog with a transcript.

Open in Studio

Social posts

Posts with handle, date and counts, without any platform branding.

Open in Studio

Case study quotes

A large case with logo and result, three shorter ones below.

Open in Studio

Bento

A large portrait quote, a rating tile in the accent and short quotes around it.

Open in Studio

Details

What Testimonials brings along, read from the registry and the source.

Variants
11
Version
1.0.1 · since 1.0.0
File
components/ui/testimonials.tsx
Brings along
utilskitbuttoniconrevealsectionnumber-tickermotion
npm packages
None
Languages
English and German, 19 texts of its own

Props

The TestimonialsProps interface from components/ui/testimonials.tsx, with the comments from the code.

  • variantoptional
    TestimonialsVariant

    gridmasonrysingle-largecarouselmarqueewith-rating-summaryavatars-switchervideo-quotestweet-cardslogo-quotebento

  • eyebrowoptional
    React.ReactNode
  • titleoptional
    React.ReactNode
  • descriptionoptional
    React.ReactNode
  • itemsrequired
    Testimonial[]
  • summaryoptional
    RatingSummary

    with-rating-summary: the aggregate on the left

  • actionoptional
    { label: string; href: string }

    Link under the block, e.g. to all reviews

Built-in texts

Testimonials writes these texts itself. The language follows the KitProvider, the labels prop replaces single ones.

Show all 19 texts
previousEnglish PreviousGerman Zurück
nextEnglish NextGerman Weiter
carouselEnglish Customer storiesGerman Kundenstimmen
slideEnglish {n} of {total}German {n} von {total}
ratingEnglish {rating} out of 5 starsGerman {rating} von 5 Sternen
basedOnEnglish Based on {count} reviewsGerman Aus {count} Bewertungen
starsEnglish {n} starsGerman {n} Sterne
verifiedEnglish Verified purchaseGerman Bestätigter Kauf
playEnglish Play the video of {name}German Video von {name} abspielen
closeEnglish CloseGerman Schließen
transcriptEnglish TranscriptGerman Abschrift
repliesEnglish RepliesGerman Antworten
repostsEnglish RepostsGerman Geteilt
likesEnglish LikesGerman Gefällt mir
showEnglish Show the quote of {name}German Zitat von {name} zeigen
filterEnglish Show only {n} star reviewsGerman Nur Bewertungen mit {n} Sternen zeigen
noneEnglish No reviews with {n} stars yet.German Noch keine Bewertungen mit {n} Sternen.
allEnglish Show all reviewsGerman Alle Bewertungen zeigen
likeEnglish LikeGerman Gefällt mir

Accessibility

Read from the source of the component.

  • Testimonials handles the keys Arrow left, Arrow right, Home, End and Space itself.
  • Built on the native dialog element. The browser keeps focus inside and closes it with Escape.
  • Sets aria-controls, aria-current, aria-label, aria-labelledby, aria-live, aria-pressed, aria-roledescription and aria-selected, so screen readers announce purpose and state.
  • Uses the roles img, region, tab, tablist and tabpanel.
  • Announces changes through a live region without moving focus.
  • Adds text for screen readers where icons and graphics stand alone.
  • Shows a visible focus ring when used with the keyboard.
  • The server renders the starting state in full, JavaScript only adds the interaction.

Motion

  • Rises in briefly the first time it comes into view (kit-rise, useInView).
  • Brings animations of its own, calmly timed and without wobble.
  • With reduced motion (prefers-reduced-motion) it stays still. 16 places in the code switch motion off then.

Frequent questions

How do I install Testimonials?

With aiw add @ai-website/testimonials. The command puts components/ui/testimonials.tsx into your project, the code is yours from then on. It brings along button, icon, reveal, section, number-ticker and motion. It needs no further npm packages.

Which variants does Testimonials have?

11 variants, Hairline grid, Masonry, Single quote, Carousel, Marquee, With rating summary, Portrait switcher, Video quotes, Social posts, Case study quotes and Bento. You pick one with the variant prop, for example variant="masonry".

Can I translate the texts of Testimonials?

Yes. Testimonials carries 19 texts of its own in English and German, such as “Previous”, “Next” and “Customer stories”. The language follows the KitProvider, single texts change through the labels prop.

Can an AI assistant build with Testimonials?

Yes. Through the MCP server of the aiw CLI, Claude, Cursor, GitHub Copilot, Windsurf, Codex and Gemini find Testimonials with aiw_components and install it with aiw_add @ai-website/testimonials. Name the variant in your prompt, for example variant="grid", and the assistant writes your content straight into the props.

Can I adjust Testimonials without code?

Yes, in the Studio. All 11 variants are editable there, texts, lists and switches. The Studio writes the matching Testimonials code to copy.

Often searched

Jump to

Copied to the clipboard