component

TuxTestimonial

Collection of attributed quotes with portrait + name + role. Two layouts: grid (cards, 2 or 3 columns — landing pages, "what people say" sections) and row (denser horizontal stack — editorial pages). Portraits use a circular gradient placeholder by default; pass image per item to use a real photo.

canonical

Grid · 3-up

  • Engineering-only treatments rarely hold past 24 months — this one is doing something different.

    Dr. Lina HassanPrincipal Investigator · Roadway Safety
  • The before/after framework is finally giving us answers that survive replication. That hasn't always been true.

    Marcus ReillyField Research Coordinator
  • We needed equity-weighted outcomes to be a first-class measurement, not a footnote on the executive summary.

    Dr. Imani ParkDirector, Center for Transportation Equity
  • What surprised us most was how much the corridor-level data changed our intuitions about what counts as risky driving.

    Sarah OkonkwoSenior Data Engineer · MovementLab
<TuxTestimonial :items="testimonials" :columns="3" />

grid · 2-up

Wider cards

Pass :columns="2" for fewer, wider cards — useful when the quotes are longer or the section needs to breathe.

  • Engineering-only treatments rarely hold past 24 months — this one is doing something different.

    Dr. Lina HassanPrincipal Investigator · Roadway Safety
  • The before/after framework is finally giving us answers that survive replication. That hasn't always been true.

    Marcus ReillyField Research Coordinator

row layout

Editorial stack

Pass layout="row". Larger portraits, italic quote body, hairline separators between rows. Right for editorial pages where density matters more than visual hierarchy.

  • "Engineering-only treatments rarely hold past 24 months — this one is doing something different."

    Dr. Lina Hassan · Principal Investigator · Roadway Safety

  • "The before/after framework is finally giving us answers that survive replication. That hasn't always been true."

    Marcus Reilly · Field Research Coordinator

  • "We needed equity-weighted outcomes to be a first-class measurement, not a footnote on the executive summary."

    Dr. Imani Park · Director, Center for Transportation Equity

  • "What surprised us most was how much the corridor-level data changed our intuitions about what counts as risky driving."

    Sarah Okonkwo · Senior Data Engineer · MovementLab

style variants

Per-variant body face

Default = Open Sans upright. Bold = Open Sans italic. Elegant = Georgia italic.

  • Engineering-only treatments rarely hold past 24 months — this one is doing something different.

    Dr. Lina HassanPrincipal Investigator · Roadway Safety
  • The before/after framework is finally giving us answers that survive replication. That hasn't always been true.

    Marcus ReillyField Research Coordinator
  • We needed equity-weighted outcomes to be a first-class measurement, not a footnote on the executive summary.

    Dr. Imani ParkDirector, Center for Transportation Equity
  • What surprised us most was how much the corridor-level data changed our intuitions about what counts as risky driving.

    Sarah OkonkwoSenior Data Engineer · MovementLab
  • Engineering-only treatments rarely hold past 24 months — this one is doing something different.

    Dr. Lina HassanPrincipal Investigator · Roadway Safety
  • The before/after framework is finally giving us answers that survive replication. That hasn't always been true.

    Marcus ReillyField Research Coordinator

props

Props + item shape

  • items — array. Required.
  • Each item — { quote, name, role?, initial?, color?, image? }.
  • color"maroon" | "gold" | "navy" for the portrait gradient. Cycles automatically if omitted.
  • image — real portrait URL. Overrides the initial placeholder.
  • layout"grid" | "row". Defaults to "grid".
  • columns2 | 3. Grid layout only. Defaults to 3.
  • variant"default" | "bold" | "elegant".