OPUS/UI

Navigation

Testimonials

Two counter-scrolling rows of testimonial cards with ratings and avatars; pauses on hover.

marketingsocial-proof6 files · 335 locdeps: clsx, tailwind-merge

Loved by builders

Thousands of teams ship faster with us.

“We rebuilt our landing page in an afternoon. The Fluid background alone doubled time-on-page.”
MT

Mai Tran

Founder, Kinetic

“The command palette and data table replaced two libraries for us. And it’s just files.”
TP

Theo Park

Staff engineer, Hooli

“Finally a kit where motion is first-class instead of an afterthought.”
PS

Pim Suwan

Designer, Orbit

“We rebuilt our landing page in an afternoon. The Fluid background alone doubled time-on-page.”
MT

Mai Tran

Founder, Kinetic

“The command palette and data table replaced two libraries for us. And it’s just files.”
TP

Theo Park

Staff engineer, Hooli

“Finally a kit where motion is first-class instead of an afterthought.”
PS

Pim Suwan

Designer, Orbit

“Copy, paste, ship. Zero config and zero runtime deps for the fancy stuff.”
AM

Arun Mehta

CTO, Stark Labs

“Accessibility is actually handled — native dialog, focus, keyboard. I checked.”
LF

Lena Fischer

Frontend lead, Globex

“Shipped my SaaS with the dashboard block. Customers think we have a design team.”
KS

Kenji Sato

Indie hacker

“Copy, paste, ship. Zero config and zero runtime deps for the fancy stuff.”
AM

Arun Mehta

CTO, Stark Labs

“Accessibility is actually handled — native dialog, focus, keyboard. I checked.”
LF

Lena Fischer

Frontend lead, Globex

“Shipped my SaaS with the dashboard block. Customers think we have a design team.”
KS

Kenji Sato

Indie hacker

Installation

With the shadcn CLI, pointing at this platform’s registry:

npx shadcn@latest add https://opusui.131199999.xyz/r/testimonials.json

Or offline, straight from your opus55 checkout (copies every file it needs):

node ../tailwind_component/opus55/scripts/add.mjs testimonials

Usage

import { Testimonials } from "@/components/opus/blocks/testimonials";

<Testimonials />

Notes

  • A block is a starting point, not a black box: copy it, then edit the copy and the content inline.

Command palette