Files
import type { TestimonialType } from "@/components/testimonial-list"
import { TestimonialList } from "@/components/testimonial-list"
export function Testimonials01() {
return (
<div className="flex flex-col gap-2 [&_.rfm-initial-child-container]:items-stretch! [&_.rfm-marquee]:items-stretch!">
<p className="px-4 py-2 text-xs font-medium text-muted-foreground">
Demo content — fictional testimonials
</p>
<TestimonialList data={TESTIMONIALS_1} />
<TestimonialList data={TESTIMONIALS_2} direction="right" />
</div>
)
}
const TESTIMONIALS_1: TestimonialType[] = [
{
authorName: "Maya Rivera",
authorInitials: "MR",
authorTagline: "Product Designer, Example Studio (fictional)",
quote:
"The component was easy to customize for our sample dashboard. We could try a few layouts without changing the core interaction.",
},
{
authorName: "Alex Chen",
authorInitials: "AC",
authorTagline: "Frontend Engineer, Sample Labs (fictional)",
quote:
"The example helped our demo team compare two approaches before settling on a simpler interface.",
},
{
authorName: "Jordan Lee",
authorInitials: "JL",
authorTagline: "Product Lead, Demo Works (fictional)",
quote:
"It was straightforward to adapt the spacing and typography to a second sample product.",
},
]
const TESTIMONIALS_2: TestimonialType[] = [
{
authorName: "Sam Taylor",
authorInitials: "ST",
authorTagline: "Developer, Example Studio (fictional)",
quote:
"The preview made it easier to check how a longer quote would wrap on smaller screens.",
},
{
authorName: "Casey Park",
authorInitials: "CP",
authorTagline: "Design Systems Engineer, Sample Labs (fictional)",
quote:
"We used the sample card to try both short and detailed attribution in our prototype.",
},
{
authorName: "Robin Patel",
authorInitials: "RP",
authorTagline: "Interface Designer, Demo Works (fictional)",
quote:
"The motion stayed smooth while we tested the component in an example gallery.",
},
]A testimonials section with dual marquees
@radityama/testimonials-01