Ship-It Designv0.0.20

GitHub

ReviewCard

A single review feed item — Avatar, Rating, date, body, optional photo strip, and a verified-trip badge.

Distinct from Testimonial: Testimonial is curated marketing chrome (quoted, hero-shaped). ReviewCard is the feed item that goes in a paginated list under a listing detail page.

Default#

Loading…

With photos#

Loading…

Props#

Props for ReviewCard
PropTypeDefaultDescription
author *ReactNodeReviewer display name.
authorAvatarstring | undefinedOptional author avatar URL.
rating *numberStar rating, 0–5.
date *ReactNodeWhen set, renders as a Date — otherwise as a string.
dateTimestring | Date | undefinedMachine-readable ISO 8601 string (or Date) for the review date. Emitted as `<time dateTime="…">{date}</time>` and threaded into the JSON-LD `datePublished` field. Backwards-compatible: when omitted the visible `date` is rendered without a `dateTime` attribute.
body *ReactNodeReview body.
photosreadonly string[] | undefinedOptional photo URLs (rendered as a horizontal strip).
verifiedboolean | undefinedWhen true, shows the "Verified trip" badge.
subtitleReactNodeOptional reviewer subtitle (location, member-since date).
authorNamestring | undefinedString version of `author` for the JSON-LD `author.name` field. Required when `author` is JSX — without it the JSON-LD script is suppressed.
bodyTextstring | undefinedString version of `body` for the JSON-LD `reviewBody`.
itemReviewedNamestring | undefinedName of the thing being reviewed (product, place, service).
urlstring | undefinedOptional URL of the reviewed item.
noStructuredDataboolean | undefinedOpt out of emitting the schema.org `Review` JSON-LD script.

Accessibility#

  • The card is <article> for landmark semantics.
  • Star rating uses the Rating primitive in read-only mode (announced as "4.5 out of 5 stars").
  • Date uses <time> so screen readers and crawlers can read it as a date.