card draws the surface chrome; quote and slider leave it out.
quoteSize
'compact' | 'normal' | 'long'
'normal'
Minimum height of the quote.
actions
React.ReactNode
—
Actions under the quote (a link to the full story).
surface
'pixel' | 'linear'
—
Surface override; defaults to the nearest provider.
Also takes the native attributes and event handlers of its element (HTMLAttributes<HTMLElement>).
ref points to its element (HTMLElement).
Accessibility
WCAG target: 2.1 AA
semantic blockquote + cite
figure/figcaption for quote variant
Renders as <article> with a <blockquote> for the testimonial body; verified badge exposes an aria-label.
Usage
import { PixelTestimonialCard } from '@pxlkit/ui-kit';
export function Default() {
return (
<PixelTestimonialCard
quote="pxlkit dropped the polish ceiling. Our marketing site felt like a product launch in a week."
name="Marisol Quintero"
role="Head of Design"
company="Northbeam"
stars={5}
verified
/>
);
}
Examples
Default
import { PixelTestimonialCard } from '@pxlkit/ui-kit';
export function Default() {
return (
<PixelTestimonialCard
quote="pxlkit dropped the polish ceiling. Our marketing site felt like a product launch in a week."
name="Marisol Quintero"
role="Head of Design"
company="Northbeam"
stars={5}
verified
/>
);
}
With avatar + tone
import { PixelTestimonialCard } from '@pxlkit/ui-kit';
export function WithAvatarAndTone() {
return (
<PixelTestimonialCard
tone="cyan"
quote="The retro surface tokens just clicked with our brand. Zero CSS surgery, all signal."
name="Diego Salas"
role="Staff Engineer"
company="Halcyon Labs"
avatar={{ name: 'Diego Salas', tone: 'cyan' }}
stars={4}
/>
);
}