Pure static build based on Astro, with no server-side rendering
PlainPage — Astro Blog Template
By ChurchTao
PlainPage is an Astro-based static blog template centered on plain-text reading, with articles managed as Markdown files and configuration centralized in a single consts.ts file.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 3
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Articles maintained as Markdown/MDX files and read through Content Collections
Site, navigation, social links, and SEO configuration centralized in src/consts.ts
Built-in light and dark appearances, with mobile adaptation
Provides basic pages including homepage, blog list, tags, and about
MIT license, allowing free use, modification, and distribution of the code
Template Details
PlainPage is a minimalist blog template for text content, built on Astro and positioned as a fast, text-centric static site. It has no server-side rendering; all content is generated at build time. Articles are stored as Markdown or MDX files in the src/content/blog/ directory, read through Astro Content Collections, and frontmatter can be type-checked with a schema.
Site configuration is centralized in src/consts.ts: site title and description, copyright information, ICP filing number, social links, default SEO share image and keywords, navigation items, and the blog's locale, author name, email, and tag page copy. Social links left empty or commented out are not displayed. Static assets such as images go in the public/ directory.
The template provides basic pages including a homepage, blog list, tag page, and about page. It includes both light and dark appearances and is responsive for mobile devices. The README states that its design references Bear Blog and was inspired by astro-paper. The repository uses the MIT license, allowing free use, modification, commercial use, and distribution of the code, but third-party assets such as demo images, fonts, and icons require separate license verification, and external services such as domains and hosting may incur additional costs.
Is it right for your project?
Use Cases
- Writing technical notes or personal essays in Markdown and publishing them as a static site
- Building a personal blog focused on text reading without complex interactions
- Using it as an introductory reference project for Astro Content Collections and static site configuration
Suitable For
- Writers who prefer managing content with Markdown
- Developers who want to self-host a static blog
- Those who need a lightweight, clearly structured Astro starter template
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Run npm install in the project root to install dependencies
- 2
Run npm run dev to start the local development server (default localhost:4321)
- 3
Run npm run build to generate the production site into ./dist/, and npm run preview to preview the build result locally
- 4
Modify configuration such as site title, description, navigation, and social links in src/consts.ts
- 5
Place articles in src/content/blog/ and static assets such as images in public/
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the MIT license in the public repository; the free scope is the code of that version and does not mean external services or third-party assets are free.
Must comply with when using
- Allows free use, modification, commercial use, and distribution of that version's code.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis
https://github.com/ChurchTao/PlainPage/blob/master/LICENSEhttps://github.com/ChurchTao/PlainPage/blob/master/README.mdPermission is hereby granted, free of charge
Original License Text
Compiled by DeepSeek based on repository license and README ·2026-10-04. 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 · 81 / 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
- 2025-07-24
- Screenshot last checked
- 2026-10-04
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: [email protected] · 2026-10-05
Inspect the recorded source material
SHA-256: f0ac44ae2f45b4c602ad7e758393eeef85b9ed06ff932ac7d0735317181cffc4
2026-10-04T19:23:08.820Z
Source file / repository<div align="center">
<img src="./public/favicon.svg" alt="PlainPage" width="100" />
</div>
# PlainPage
A fast, text-focused, minimalist blog.
[English](./README.md) | [中文](./README.zh-CN.md)
## Live Demo
- [Github Pages Demo](https://churchtao.github.io/PlainPage/)
## Features
- 🚀 Fast: 100% static, no server-side rendering
- 📖 Simple: Just markdown files
- 🌈 Customizable: Customize the theme and layout
- 📚 SEO-friendly: Support for SEO
- 📱 Responsive: Support for mobile devices
- 📦 Based on [astro](https://astro.build) version latest
## ✅ Lighthouse Score
[](https://pagespeed.web.dev/analysis/https-churchtao-github-io-PlainPage/e1mpmv9swy?form_factor=desktop)
## Screenshots


## 🚀 Project Structure
```text
├── public/
├── src/
│ ├── components/
│ ├── content/
│ ├── layouts/
│ ├── pages/
│ └── consts.ts
├── astro.config.mjs
├── README.md
├── package.json
└── tsconfig.json
```
The `src/content/` directory contains "collections" of related Markdown and MDX documents. Use `getCollection()` to retrieve posts from `src/content/blog/`, and type-check your frontmatter using an optional schema. See [Astro's Content Collections docs](https://docs.astro.build/en/guides/content-collections/) to learn more.
Any static assets, like images, can be placed in the `public/` directory.
All configuration is in `src/consts.ts`.
```ts
// src/consts.ts
// site config
export const SITE_TITLE = "PlainPage";
export const SITE_DESCRIPTION = "Welcome (. ❛ ᴗ ❛.)";
export const COPYRIGHT = "© 2024 PlainPage All Rights Reserved";
export const ICP_NUMBER = "";
// social links, empty or commented out = not displayed
export const SOCIAL_LINKS = {
Github: "https://github.com/churchTao",
Twitter: "https://twitter.com/yourusername",
// LinkedIn: "https://www.linkedin.com/in/yourusername",
// Instagram: "https://www.instagram.com/yourusername",
// Facebook: "https://www.facebook.com/yourusername",
// YouTube: "https://www.youtube.com/yourusername",
};
// SEO related
export const SEO_CONFIG = {
ogImage: "/hero-img.png", // default social media share image
keywords: "blog, tech, programming", // default keywords
};
// navigation config
export const NAV_ITEMS = [
{ text: "Home", link: "/" },
{ text: "Blog", link: "/blog" },
{ text: "Tags", link: "/tags" },
{ text: "About", link: "/about" },
];
// blog config
export const BLOG_CONFIG = {
locale: "en-us", // date format language
authorName: "Author Name", // author name
email: "mailto:[email protected]",
tags: {
title: "Tags", // tags page title
description: "All the tags used in posts.", // tags page description
},
};
```
## 🧞 Commands
All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `npm run astro -- --help` | Get help using the Astro CLI |
## Credit
This theme is based off of the lovely [Bear Blog](https://github.com/HermanMartinus/bearblog/).
Inspired by [satnaing/astro-paper](https://github.com/satnaing/astro-paper).
Based on [astro](https://astro.build).
## Sites using this theme
- [毛桃的小世界](https://毛桃.top)
- [Mobai's Blog](https://blog.loliowo.com)
👏 You can submit your site to the list by creating a PR.
## 📜 License
Licensed under the [MIT](./LICENSE) License, Copyright © 2024
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
