# Blog list

> Post cards in a grid, or one featured post above the grid.

URL: https://apogee.avaui.dev/docs/sections/blog-list
Last updated: 2026-10-15

Post cards in a grid, or one featured post above the grid.

Last updated October 15, 2026

```astro
<BlogList heading="From the blog" items={[{ title, excerpt, href, image?, date, author? }, …]} />
```

## Add

```sh
npx @ava-ui/apogee add blog-list
```

## API

| Prop | Type | Default | Category | Description |
| --- | --- | --- | --- | --- |
| `eyebrow`, `heading`, `description` | `string` | — | content | Optional header. |
| `items` | `{ title, excerpt, href, image?, date, author? }[]` | — | content | Required. `date` is an ISO string, rendered in a `<time>`. |
| `label` | `string` | English | content | Landmark name when there is no heading. |
| `locale` | `string` | page locale or `'en'` | content | Date formatting locale. |
| `layout` | `'grid' \| 'featured'` | `'grid'` | layout | `featured` shows the first post full width. |
| `align` | `'start' \| 'center'` | `'start'` | layout | Header alignment. |
| `background`, `spacing`, `headingLevel`, `id` |  |  | layout | As on every section. |

## Layouts

```astro
<BlogList layout="featured" items={…} />
```

## Accessibility

-   Each card is an `article`; the title is the link and the whole card is its hit area.
-   Dates are `<time datetime>` elements.
