Built on Astro v7, with content written as typed Markdown/MDX
dong — Astro Blog Template
By riceball-tw
An Astro v7 blog theme with built-in i18n, Pagefind search, and OG image generation, plus CI/CD pipelines.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
The actual desktop layout captured from the demo homepage.
All pages & views 3
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Separates long-form posts from short posts as two publishing forms
Built-in i18n, Pagefind search, and OG image generation and caching via vercel/og
Code blocks and Mermaid diagrams rendered with expressive-code and remark-mermaid
Comes with a CI pipeline using TypeScript, Biome, Cypress, and Lighthouse
CD supports Cloudflare Pages or GitHub Pages, plus a Docker build option
Template Details
Dong is the result of its author turning a personal blog run for years into an open-source theme. It is built on Astro v7 and positioned as a content-focused blog site. Content is split into two types: regular long-form posts and short posts, both managed as typed Markdown/MDX. Site configuration, articles, and i18n copy live under /src/content and /src/i18n respectively, keeping customization entry points relatively centralized.
Feature-wise it is fairly complete: built-in multilingual support, Pagefind site search, Open Graph images generated and cached via vercel/og, Google Analytics, and code blocks and Mermaid diagrams rendered by expressive-code and remark-mermaid respectively. The repository also includes a CI pipeline composed of TypeScript, Biome, Cypress E2E, and Lighthouse, plus CD configuration for Cloudflare Pages or GitHub Pages, and a Docker build option. The README claims a perfect Lighthouse score; this is the author's own statement, so actual deployment results should be treated as authoritative.
The main barrier to use is on the engineering side: familiarity with pnpm, Astro configuration, and content collections is required, and you must prepare your own .env (refer to .env.example) and deployment target. The clone command in the README points to the letter repository, which is inconsistent with dong, so it needs to be verified before starting; whether capabilities such as Google Analytics and OG images work out of the box should also be confirmed by running the demo and a local build first.
Is it right for your project?
Use Cases
- Building a personal technical blog with multilingual support
- A writing site that needs to publish long-form and short content in parallel
- Astro projects that want to deploy directly to Pages platforms using ready-made CI/CD configuration
Suitable For
- Front-end developers familiar with Astro and pnpm workflows
- Personal bloggers willing to maintain content and translation files according to directory conventions
- Projects that need a coherent set of features such as site search, OG images, and multilingual support
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
The clone command in the README points to the letter repository; the dong repository address should actually be used
- 2
Environment variables must be prepared according to .env.example, especially CI/CD-related configuration
- 3
Set the correct site URL in astro.config.mjs before deployment
- 4
The perfect Lighthouse score and feature availability are the author's own claims; verify them yourself after a local build
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free MIT version in the public repository; the free scope applies to that version's code and does not mean external services or third-party assets are free.
Must comply with when using
- When using, modifying, or distributing the code, retain the original author's copyright notice and the full MIT license.
- Free use, modification, and commercial use are permitted, as is distribution of the code; distribution must still include the copyright and license notice.
- The code is provided as is, without warranties; the MIT license also disclaims author and copyright-holder liability.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; the code's MIT license alone is not sufficient to judge them.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis
https://github.com/riceball-tw/dong/blob/main/LICENSEhttps://github.com/riceball-tw/dong/blob/main/README.mdPermission is hereby granted, free of charge
Original License Text
Based on the full MIT license and the repository README · 2026-09-27. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- Astro Themes
- Documentation and maintenance reference score
- More documented · 87 / 100
- Technologies
- Astro
- Website type
- Blog
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-09-19
- Screenshot last checked
- 2026-09-27
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Review declaration: Codex(本次来源核对) · 2026-09-27
Inspect the recorded source material
SHA-256: 82a27ec9a5a1d848b1c2f5d612675faad6193cd0589f94bb1f31e8d835871c9b
2026-09-27T12:10:43.752Z
Source file / repository<div align="center">
<img alt="logo" src="./src/assets/images/brand/logo.svg#gh-light-mode-only" width="64" />
<img alt="logo" src="./src/assets/images/readme/logo-light.svg#gh-dark-mode-only" width="64" />
</div>
<h1 align="center">
Dong Blog
</h1>
<div align="center">
A battle-tested, feature-rich blog theme powered by Astro v7
</div>
<br />
> [!TIP]
> Been building [my blog](https://www.webdong.dev/en/) for years — so I turned it into an open-source theme. <br />
> You might be intrested in building personal site too, Check out [Letter Portfolio theme](https://github.com/riceball-tw/letter)!
## Key Features
Start your online [posts](https://riceball-tw.github.io/dong/en/post/) or [shortposts](https://riceball-tw.github.io/dong/en/shortpost/) through fully typed markdown and settings. Check out the [GitHub Pages Demo](https://riceball-tw.github.io/dong/en/).
- Optimize for speed (100% lighthouse score)
- Responsive & SEO-friendly
- Built-in i18n
- content
- Open Graph image generation through [vercel/og](https://vercel.com/docs/og-image-generation) with cache
- Page search through [Pagefind](https://pagefind.app/)
- Google Analytic
- Beautiful code block & Mermaid diagram using [expressive-code](https://github.com/expressive-code/expressive-code) and [remark-mermaid](https://github.com/temando/remark-mermaid)
- CI pipeline (TypeScript / [Biome linter](https://biomejs.dev/) / [Cypress E2E testing](https://www.cypress.io/) / [Lighthouse](https://github.com/GoogleChrome/lighthouse))
- CD pipeline ([Cloudflare Pages](https://pages.cloudflare.com/) or [GitHub Pages](https://pages.github.com/))
## Getting Started
### Development
```bash
# 1. Clone the repository
git clone https://github.com/riceball-tw/letter.git .
# 2. Install dependencies
pnpm install
# 3. Run development server
pnpm run dev
```
### Build
```bash
# a. Locally
# Deploy the contents of the `./dist` folder wherever you like.
pnpm install
pnpm build
pnpm preview
# b. Build docker image
docker build -t <your-astro-image-name> .
docker run -p <local-port>:<container-port> <your-astro-image-name>
```
### Customization
1. `astro.config.mjs`: Astro configs
- `site`: Your final, deployed URL
2. `/src/content`: Site config, posts, shortposts (Markdown / MDX)
3. `/src/i18n`: Translations used in astro templates
4. `/public`: Assets used in the site (favicon, og image)
5. `/src/assets`: Assets used in the site (logo, logomark)
6. `/src/styles/global.css`: Styles
7. `/.github/workflows/testing-and-deploy-pipeline.yml`: GitHub CI/CD pipeline (setup `.env` base on `.env.example`)
## Helping out
For questions or support, please open an issue on GitHub.
## License
MIT
Explore similar templates
Compare previews and descriptions within the same stack and category.

astrowind
AstroWind is a free, open-source Astro starter theme using Astro and Tailwind CSS, released under the MIT license.
Astro · Blog

astro-paper
AstroPaper is a minimal, responsive, accessible, and SEO-friendly Astro blog theme. Articles are stored as Markdown/MDX in src/content/posts/, with subdirectories affecting URLs.
Astro · Blog

fuwari
Fuwari is a static blog template built with Astro and Tailwind CSS for personal blogs. It manages posts as Markdown files in src/content/posts/, with frontmatter for title, date, description, cover, tags, categories, draft status, and language.
Astro · Blog

Firefly
Firefly is a clean personal blog theme forked from Astro and Fuwari, offering four background modes, single/double sidebar and list/grid layouts, Pagefind client-side full-text search, and a six-language UI.
Astro · Blog

astro-theme-cactus
Astro Cactus is an Astro-based blog and portfolio theme that uses Markdown/MDX content collections to manage posts, notes, and tags, with frontmatter type-checked by a schema.
Astro · Portfolio

astrofy
Astrofy is a free and open-source personal portfolio website template built with Astro and TailwindCSS, with built-in blog, CV timeline, project showcase, store, and RSS feed modules.
Astro · Portfolio
