nextui.dev
Home
Docs
Saved
Pricing
Components37
  • Forms & inputs7
  • Cards13
  • Buttons, badges & avatars8
  • Feedback & display6
  • Effects3
Agents17
  • Chat inputNew
  • Task checklistNew
  • ReasoningNew
  • Tool callNew
  • Tool approvalNew
  • SourcesNew
  • Agent timelineNew
  • Artifact panelNew
  • Streaming messageNew
  • Conversation shellNew
  • Voice agentNew
  • Voice orbNew
  • Thinking ring
  • Thinking waveNew
  • Thinking sparkle
  • Thinking bot
  • Prompt deckNew
Blocks20
  • Agent chatNew
  • Pill heroNew
  • Grid hero
  • Moodboard generatorNew
  • Waitlist heroNew
  • Intro bannerNew
  • Creative home heroNew
  • Chat heroNew
  • App shelfNew
  • Usage card
  • Design resultsNew
  • Pricing tiers
  • Dashboard home
  • The shiftNew
  • Launch perksNew
  • Testimonials
  • Quote
  • Team
  • Leads tableNew
  • Sign in
Pages10
  • ASCII workspace$49
  • CRM overviewNew
  • Marketing dashboardNew
  • Developer portfolio$49
  • Particle landing$49
  • Particle story$49
  • Statement converter$49
  • AI photo studio$49
  • Group card launch$49
  • Month-end storyNew
Themes9
  • Default
  • Ember
  • Ocean
  • Forest
  • Grape
  • Rose
  • Amber
  • Clay
  • Brutal
Upgrade
nextui.dev

nextui components, blocks and themes you install with one command.

Product

  • Components
  • Blocks
  • Themes
  • Pricing

Resources

  • Docs
  • Roadmap
  • GitHub

Legal

  • License
  • Privacy
  • Terms
  • Refunds

nextUI

[ 200 OK ] · nextUI

© 2026 NEXTUI • All rights reserved.

Upgrade
ComponentsCardsStory testimonial
Copy promptCopy prompt

Customize

How long each testimonial stays up while its bar fills, in ms; pauses on hover

4200ms

JSX · copied with Copy prompt

<StoryTestimonial />

Story testimonialNew

A white testimonial card with an avatar, name, handle, serif quote and date that plays like a story: the active bar along the bottom fills, then the next quote fades in. Tap either side to step back or forward.

Installation

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/story-testimonial
1{
2 "registries": {
3 "@nextui": {
4 "url": "https://nextui.dev/r/{name}.json",
5 "headers": { "Authorization": "Bearer ${NEXTUI_TOKEN}" }
6 }
7 }
8}

Usage

1"use client";
2
3import { StoryTestimonial } from "@/components/nextui/story-testimonial";
4
5export function Example() {
6 return (
7 <StoryTestimonial
8 interval={4200}
9 items={[
10 { name: "Mara Ellison", handle: "@maraonbikes", quote: "I came in wanting a logo and left with a whole way of thinking about my brand.", date: "14.02.2026" },
11 { name: "Theo Park", handle: "@theobuilds", quote: "Every call felt like a step forward.", date: "03.03.2026", avatar: "/avatars/theo.jpg" },
12 { name: "Lina Okafor", handle: "@linaokafor", quote: "Honest feedback, kind delivery.", date: "21.04.2026" },
13 ]}
14 />
15 );
16}

API reference

Edit props live in the preview above, or see all 4 props
PropTypeDefaultDescription
itemsStoryTestimonialItem[]five sample testimonialsTestimonials shown one at a time, each with a name, handle, quote, date and optional avatar URL; one bar per item
intervalnumber4200How long each testimonial stays up while its bar fills, in ms; pauses on hover
onActiveChange(index: number) => void–Called with the index of the testimonial that came up
classNamestring–Extra class on the root

Motion

  • Story-style bars along the bottom: finished ones stay full, the active one fills linearly, the rest wait faint
  • When a bar fills the quote fades out with a light blur and the next one fades in; after the last it loops back
  • Tap the left third of the card to go back and the rest to go forward, or use the arrow keys when focused
  • Only plays while on screen; with reduced motion nothing auto-advances and the quotes switch without fading

Avatars

  • Pass avatar as an image URL; without one the initials sit on a soft gradient picked from the name

Related

All components

Contact stackNew

Service receiptNew

Revenue cardNew

Sign in to see the code

Preview it freely. A free account copies code and prompts a few times a day.

Sign in