---
title: "Blog post grid"
description: "A journal index with category filters and posts in three columns, each with its cover, excerpt, author and reading time, and Load more."
plan: Pro
docs: https://ui.edbn.me/docs/blocks/blog-post-grid
---

# Blog post grid

A journal index with category filters and posts in three columns, each with its cover, excerpt, author and reading time, and Load more.

A ToggleGroup filters the posts by category and announces how many match; it wraps on phones so every category stays in view. Each card is one link: a 16:10 cover, the category, a title of up to two lines, a two-line excerpt, and the author's initials with the date and reading time. Six posts show at first. Load more shows a spinner in the button's place, adds three and moves focus to the first new post; once all are shown a line says so. Three columns on desktop, two on tablets and one on phones.

A Pro block built on Base UI and Tailwind CSS v4.

## Installation

This is a Pro item. Once per project, create a token at https://ui.edbn.me/dashboard/tokens, put it in `.env.local` as `EDBN_TOKEN`, and add the registry to `components.json`:

```json
{
  "registries": {
    "@edbn": {
      "url": "https://ui.edbn.me/r/{name}.json",
      "headers": { "Authorization": "Bearer ${EDBN_TOKEN}" }
    }
  }
}
```

Then install:

```bash
npx shadcn@4.19.0 add @edbn/blog-post-grid
```

## Dependencies
- edbn: edbn-base, aspect-ratio, avatar, button, spinner, toggle-group

## Source

The source is part of Pro (https://ui.edbn.me/pricing). The install above adds it to the project, ready to edit.

## More blog blocks

All 4, with install commands: https://ui.edbn.me/docs/blocks/blog (Markdown: https://ui.edbn.me/docs/blocks/blog.md)

## For agents
- Base theme, once per project: npx shadcn@4.19.0 add https://ui.edbn.me/r/edbn-base.json
- MCP server with search, items, examples and source: https://ui.edbn.me/mcp
- Every page and item: https://ui.edbn.me/llms.txt
