Three testimonial cards with ratings and avatars.
Set your access key from API keys as NEXTUI_TOKEN in .env.local and add the @nextui namespace below to components.json once. Then every item installs by name. Each install counts as a copy on a free account.
$pnpm dlx shadcn@latest add @nextui/testimonials
1{2"registries": {3"@nextui": {4"url": "https://nextui.dev/r/{name}.json",5"headers": { "Authorization": "Bearer ${NEXTUI_TOKEN}" }6}7}8}
1import { TestimonialCards } from "@/components/blocks/testimonials";23export function Reviews() {4return (5<TestimonialCards6title="What customers say"7testimonials={[8{ quote: "Onboarding took a day, not a quarter.", name: "Sam Ortiz", role: "COO, Fieldline", initials: "SO" },9{ quote: "Our support queue dropped by half.", name: "Nina Park", role: "Head of CX, Loop", initials: "NP", avatar: "/people/nina.jpg" },10{ quote: "Finally, reports the board reads.", name: "Ivo Petrov", role: "CFO, Arcadia", initials: "IP", rating: 4 },11]}12/>13);14}
| Prop | Type | Default | Description |
|---|---|---|---|
| title | string | "Loved by fast-moving teams" | Heading above the cards |
| testimonials | TestimonialItem[] | 3 sample quotes | Cards: quote, name, role, initials, optional avatar and rating |
| className | string | – | Extra classes on the section |
Sign in to see the code
Preview it freely. A free account copies code and prompts a few times a day.