Cards
Display content in titled card boxes, arranged in flexible grids with Card and CardGrid.
The <Card> and <CardGrid> components let you present content in titled, bordered boxes arranged in a grid. Unlike LinkGrid, cards don’t require a link — they accept any slot content.
Card
A single card with a required title and an optional icon.
Props:
title(required string) — displayed in the card headericon(optional string) — an emoji or single character shown before the title
<Card title="Static output" icon="⚡"> Dustavez generates plain HTML files at build time. No server required — deploy to any CDN or static host.</Card>Dustavez generates plain HTML files at build time. No server required — deploy to any CDN or static host.
Cards accept rich slot content — lists, code, and inline formatting all work:
<Card title="Supported locales" icon="🌍"> Six locales ship by default:
- `en` — English - `fr` — French - `es` — Spanish - `de` — German - `ja` — Japanese - `hi` — Hindi</Card>Six locales ship by default:
en— Englishfr— Frenches— Spanishde— Germanja— Japanesehi— Hindi
CardGrid
Wraps multiple <Card> components in a responsive grid.
Props:
cols— optional1 | 2 | 3, default2
<CardGrid> <Card title="MDX" icon="📝"> Write content in Markdown with full JSX component support. </Card> <Card title="Search" icon="🔍"> Client-side full-text search powered by Orama. No server needed. </Card> <Card title="i18n" icon="🌐"> Six locales included. Add more by creating locale folders in `content/docs/`. </Card> <Card title="Theming" icon="🎨"> All colors are CSS custom properties. Swap the entire palette in one file. </Card></CardGrid>Write content in Markdown with full JSX component support.
Client-side full-text search powered by Orama. No server needed.
Six locales included. Add more by creating locale folders in
content/docs/.
All colors are CSS custom properties. Swap the entire palette in one file.
Three-column layout
<CardGrid cols={3}> <Card title="Fast">Zero runtime JS by default.</Card> <Card title="Typed">Full TypeScript support.</Card> <Card title="Flexible">Drop in any Astro integration.</Card></CardGrid>Single column
<CardGrid cols={1}> <Card title="Step 1 — Install">Run `npm create astro` and choose the Dustavez template.</Card> <Card title="Step 2 — Configure">Edit `astro.config.ts` and set your site URL.</Card> <Card title="Step 3 — Write">Add MDX files to `content/docs/en/` and start writing.</Card></CardGrid>Run npm create astro and choose the Dustavez template.
Edit astro.config.ts and set your site URL.
Add MDX files to content/docs/en/ and start writing.
On narrow viewports, CardGrid collapses to a single column regardless of the
cols value.