Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

App Review Reply Testimonials Block for React

A split testimonials section for an app: a header with store stats and a Shine Button beside a divider, then a phone-width Ratings and reviews panel in a hairline frame, each review answered by the team in a nested reply.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Show the whole conversation, not just the praise. The section is a split on drafting lines: on the left a compact header for the Kestrel habit-tracking app, a row of store stats (rating, share of reviews answered, median reply time) and a Shine Button that sends people to the app; on the right, past a hairline divider, a phone-width "Ratings and reviews" panel in a frame with + marks on its corners. The panel's reviews sit in ruled bands. Each has its stars in the text colour, a title, the review and the reviewer's name, and beneath it, indented along a rule, a reply from the team. The first reply is already open; the second sits behind a "Show reply" button, so a visitor can see both what customers say and how the company answers. It's built from Guides, Message, Collapsible, Badge, Avatar and Shine Button, with your theme's tokens and CSS-only entrances. The panel is as wide as a phone on purpose, with no phone frame around it. On a phone the header and button come first and the panel follows, and the stats are left out. Made for app landing pages and any product whose answers to reviews say as much as the reviews.

FAQ

How do I change the reviews, replies and stats?

Edit REVIEWS at the top of the file: each review has its author, initials, stars, title, body, reply and a relative time written as words (such as "2 weeks ago", so it never goes stale). TEAM sets the name in "Reply from the Kestrel team", LISTING holds the rating shown in the panel's top bar, and STATS is the row of three figures beside the header. OPEN_FIRST is the index of the review whose reply is open from the start; the others get the "Show reply" button.

How does Show reply work?

The button is the trigger of a Collapsible: a tap, click, Enter or Space opens the reply with a short height transition and turns the label into "Hide reply"; with reduced motion it opens at once. The button reports whether it is open to assistive technology, and it's named "Show reply from the team", so it still makes sense out of context.

How are the ratings shown, and are they real?

The stars are decoration, drawn in the text colour (filled) and the border colour (empty), and each review carries the same rating as text for screen readers: "Rated 5 out of 5". They show a rating a customer gave; they are not a control. The reviews, replies and store figures in the demo are made up: replace them with your own, and only show reviews you have the right to quote.

How do screen readers read it?

Each review is a list item with an h3 for the title, a figure with a blockquote for the review and a figcaption for the reviewer. The reply follows in reading order, under its own "Reply from the Kestrel team" line with a "Team" badge. The initials avatars, the frame's lines and the + marks are hidden, since names are written beside them.

Why is the panel so narrow, and can I widen it?

It's set at max-w-md, about a phone's width, so the reviews read the way they would in the app and a long line never runs across a wide screen. Change that class on the panel for a wider one; the bands fill whatever width they are given. Below the large breakpoint the two columns stack and the panel is centred.

Does it work in right-to-left languages?

Yes. The divider, the reply's indent and rule sit on the inline start side, so they flip with the reading direction, the chevron on the button turns with it, and each review's text and every figure sit in a bdi.

  • Pro

    NPS Score Bar Testimonials

    Ratings and reviews

    A Net Promoter Score in large type beside a stacked bar of promoters, passives and detractors drawn from typed counts, in two ruled bands with a promoter's quote at display size and a Shine Button.

  • Pro

    Verified Buyer Testimonials

    Ratings and reviews

    One focal review under a Verified purchase badge in a raised card inside a tinted shell, a divider and a receipt of what the customer bought, then a band of three compact reviews with the same badge.

  • Pro

    Three long reviews of a bookkeeping app beside a rail of proof: the average rating and its spread, with Helpful and Not helpful votes whose counts change as you choose.

  • Pro

    With Rating Testimonials

    Collect a review

    One large customer quote over a closing band you can rate in: choose stars and the average and the rating count change on the spot, with a note that nothing is saved.

  • Pro

    A centred showcase hero with a headline, a Shine Button and an outline action over a wall of six customer quotes in cells that share their hairlines, a snap carousel on a phone.

  • Pro

    A split call to action built as a short chat: the headline at the start, and at the end a customer's quote in a bubble, answered by a reply bubble that holds the Shine Button to start free.