Component reference
DescriptionList
Workspace metadata expressed as terms and descriptions.
Preview
Live previewOptional six-digit hex. Clear to restore the preset. Check contrast with your brand color.
Changes apply to this preview only.
Workspace
Settings that do not fit in a form.
- Plan
- Pro
- Seats
- 12 of 20
- Storage
- 42 GB of 100 GB
- Region
- eu-west-3
- Renewal
- 19 Oct 2026
Deployment
A bordered list for a compact summary.
- Environment
- production
- Commit
fde3d86- Status
- ready
Width adapts to the available space
"use client";
import {
Card,
CardHeader,
CardTitle,
CardDescription,
CardContent,
DescriptionList,
DescriptionItem,
Badge
} from "@pimolu/react";
export function DemoExample() {
return (
<div
className="grid grid-cols-[repeat(auto-fit,minmax(min(100%,280px),1fr))] gap-6 min-w-0 items-start"
>
<Card>
<CardHeader>
<CardTitle>Workspace</CardTitle>
<CardDescription>Settings that do not fit in a form.</CardDescription>
</CardHeader>
<CardContent>
<DescriptionList variant="divided" layout="inline">
<DescriptionItem term="Plan" details="Pro" />
<DescriptionItem term="Seats" details="12 of 20" />
<DescriptionItem term="Storage" details="42 GB of 100 GB" />
<DescriptionItem term="Region" details="eu-west-3" />
<DescriptionItem term="Renewal" details="19 Oct 2026" />
</DescriptionList>
</CardContent>
</Card>
<Card>
<CardHeader>
<CardTitle>Deployment</CardTitle>
<CardDescription>A bordered list for a compact summary.</CardDescription>
</CardHeader>
<CardContent>
<DescriptionList variant="bordered">
<DescriptionItem term="Environment" details="production" />
<DescriptionItem term="Commit" details={<code>fde3d86</code>} />
<DescriptionItem
term="Status"
details={<Badge variant="success">ready</Badge>}
/>
</DescriptionList>
</CardContent>
</Card>
</div>
);
}More examples
Different configurations and compositions using the real Pimolu API. Each preview runs independently and follows the site appearance.
Layouts
stacked puts the term above the value; inline puts them side by side.
Variants
Enumerated from descriptionListVariantMap: plain, divided and bordered.
Sizes
Enumerated from descriptionListVariantMap: sm, md and lg.
Usage
Use this pattern for name/value details rather than a grid of unrelated labels.
API reference
Generated from the public TypeScript declarations. Native HTML attributes are inherited where the component extends them; this reference includes Pimolu props and selected common native attributes.
PimoluDescriptionListProps
Type source| Name | Type | Default | Description |
|---|---|---|---|
layout | "stacked" | "inline" | undefined | "stacked" | Layout of each term/details pair. Defaults to "stacked". |
variant | "plain" | "divided" | "bordered" | undefined | "divided" | Visual treatment. Defaults to "divided". |
size | "sm" | "md" | "lg" | undefined | "md" | Row density. Defaults to "md". |
childrenRequired | ReactNode | — | Public Pimolu prop; see the source declaration for details. |
defaultValue | string | number | readonly string[] | undefined | — | Standard React/HTML attribute. |
className | string | undefined | — | Standard React/HTML attribute. |
style | CSSProperties | undefined | — | Standard React/HTML attribute. |
aria-label | string | undefined | — | Defines a string value that labels the current element. |
onChange | ChangeEventHandler<HTMLDListElement, Element> | undefined | — | Standard React/HTML attribute. |
onClick | MouseEventHandler<HTMLDListElement> | undefined | — | Standard React/HTML attribute. |
layout"stacked" | "inline" | undefinedDefault: "stacked"
Layout of each term/details pair. Defaults to "stacked".
variant"plain" | "divided" | "bordered" | undefinedDefault: "divided"
Visual treatment. Defaults to "divided".
size"sm" | "md" | "lg" | undefinedDefault: "md"
Row density. Defaults to "md".
childrenRequiredReactNodeNo default extracted.
Public Pimolu prop; see the source declaration for details.
defaultValuestring | number | readonly string[] | undefinedNo default extracted.
Standard React/HTML attribute.
classNamestring | undefinedNo default extracted.
Standard React/HTML attribute.
styleCSSProperties | undefinedNo default extracted.
Standard React/HTML attribute.
aria-labelstring | undefinedNo default extracted.
Defines a string value that labels the current element.
onChangeChangeEventHandler<HTMLDListElement, Element> | undefinedNo default extracted.
Standard React/HTML attribute.
onClickMouseEventHandler<HTMLDListElement> | undefinedNo default extracted.
Standard React/HTML attribute.
PimoluDescriptionItemProps
Type source| Name | Type | Default | Description |
|---|---|---|---|
termRequired | ReactNode | — | Public Pimolu prop; see the source declaration for details. |
detailsRequired | ReactNode | — | Public Pimolu prop; see the source declaration for details. |
className | string | undefined | — | Public Pimolu prop; see the source declaration for details. |
termRequiredReactNodeNo default extracted.
Public Pimolu prop; see the source declaration for details.
detailsRequiredReactNodeNo default extracted.
Public Pimolu prop; see the source declaration for details.
classNamestring | undefinedNo default extracted.
Public Pimolu prop; see the source declaration for details.
Accessibility
- Keep terms associated with their descriptions and preserve a sensible reading order.