docs / patterns / stripe-card
StripeCard
a compact row-card for one entity: a leading stripe keys it to a category, with a heading, mono meta, and optional badge and footer. the stripe means something or stays neutral, never decoration.
intensity · structuresrsc · server
provenance
shaped from sisu-pluslayer
core / patternsintensity
structures · organizes a region, stays out of the contentcomposition
sits in a grid or list of siblings, one entity eachthe stripe color keys a category shared with a ToolbarLegendnever a lone hero card. it is a row in a collectionno interactive children fighting the card's own hover lifta11y
the stripe and the meta separator arearia-hidden · the heading is a real h3jest-axedependencies
Card from the same packagelive demo · try it out
customize
stripeColorkeyed to a category
washa faint wash in the stripe's color
surfacehow it sits on the page
selectedswaps hover lift for the accent ring
usage
import { StripeCard } from "@usva-ui/react/patterns/stripe-card";
import { Badge } from "@usva-ui/react/primitives/badge";
<StripeCard
heading="Algorithms & Data Structures"
metaLeft="CS-201"
metaRight="5 cr"
stripeColor="#a78bfa"
badge={<Badge tone="accent-alt">enrolled</Badge>}
footer="Autumn 2026 · Prof. Turing"
/>props
| prop | type | default | notes |
|---|---|---|---|
| heading | ReactNode | — | the primary title. |
| metaLeft | ReactNode | — | mono meta on the left, e.g. a code. |
| metaRight | ReactNode | — | mono meta on the right, rendered in the accent color. |
| badge | ReactNode | — | top-right slot, usually a Badge. |
| footer | ReactNode | — | bottom bar slot, pinned under the body. |
| stripeColor | string | — | any CSS color, keyed to a category. unset falls back to a neutral token. |
| wash | boolean | false | a faint background wash in the stripe's color, or the accent when the stripe is unset. |
| surface | "elevated" | "flat" | "glass" | "outline" | "elevated" | how the card sits on the page. inherited from Card. |
| selected | boolean | false | swaps the hover lift for the accent glow ring. |
get it
bun add @usva-ui/reactusage
import { StripeCard } from "@usva-ui/react/patterns/stripe-card";
import { Badge } from "@usva-ui/react/primitives/badge";
<StripeCard
heading="Algorithms & Data Structures"
metaLeft="CS-201"
metaRight="5 cr"
stripeColor="var(--color-accent)"
badge={<Badge tone="accent-alt">enrolled</Badge>}
/>