About
A Chirpy-inspired Astro theme built for writers and tinkerers.
Chirping Astro is an open-source theme that brings the look and feel of the popular Chirpy Jekyll theme to Astro, with a modern toolchain and zero-JavaScript reading by default.
It is intended for personal blogs, technical journals, and documentation sites where typography, search, and quiet, focused reading matter more than animations and ad slots.
- Reading-first layout — fixed left sidebar with avatar, vertical nav, theme toggle, and social links; centered main column capped at 1250px; right rail with “Recently Updated” and “Trending Tags”.
- Light & dark themes — the original Chirpy palette, ported to daisyUI v5 tokens, with a circular reveal transition between modes.
- Markdown + MDX — Astro Content Collections with typed frontmatter,
Shiki syntax highlighting, GFM, footnotes, an automatic table of
contents, and a bundled
<Callout>component. - LaTeX math — opt-in KaTeX support per post via
math: true. - Instant search — Pagefind generates a static search index at build time; the search overlay loads on demand.
- Comments — Giscus integration backed by GitHub Discussions, with per-post opt-out.
- Smooth navigation — Astro view transitions with a subtle fade and motion-reduced fallback for accessibility.
- SEO out of the box — OpenGraph, Twitter cards, an RSS feed, and a sitemap.
- Astro 7.x — Content Collections, MDX, RSS, and view transitions
- Tailwind CSS v4 via the
@tailwindcss/viteplugin, with daisyUI v5 for theming - Pagefind for static search
- Giscus for comments
- Shiki, KaTeX, and Lucide icons
Almost everything is wired through a single typed config file at
src/config.ts — site title, author, navigation,
social links, posts-per-page, Giscus credentials, and feature flags.
Restart pnpm dev after editing it.
New posts go in src/content/posts/. The frontmatter reference in this
demo site explains every field.
Released under the MIT License. The visual design is a tribute to Cotes Chung’s Chirpy; the Astro implementation, content, and code are independent.