Built with Astro, outputs a static site, and can be deployed to any static hosting platform
astro-theme-pure — Astro Blog Template
By cworld1
Astro Theme Pure is an Astro-based blog and documentation theme under the Apache-2.0 license, featuring built-in site-wide search, table of contents, RSS, and dynamic OG image generation.
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.
Built-in site-wide search powered by pagefind, plus sitemap and RSS output
Provides article table of contents, dynamic Open Graph image generation, and a Mediumzoom image lightbox
Includes components such as Aside, Tabs, Timeline, Steps, Spoiler, GithubCard, LinkPreview, Quote, and QRCode
Under the Apache-2.0 license, allowing modification, commercial use, and distribution
Covers both blog and documentation content scenarios
Template Details
Astro Theme Pure is maintained by cworld1 and is an Astro theme for blog and documentation use cases. The repository is under the Apache-2.0 license, and the demo site is astro-pure.js.org. The theme provides a responsive layout, site-wide search (powered by pagefind), sitemap and RSS, article table of contents, dynamic Open Graph image generation, and a Mediumzoom image lightbox, along with reusable components such as Aside, Tabs, Timeline, Steps, Spoiler, GithubCard, LinkPreview, Quote, and QRCode.
For usage, the project requires Node.js 22.12.0 or newer (Astro does not support odd-numbered Node.js versions). Dependency installation and the development server can be run via Bun, pnpm, yarn, or npm, with the default development port being 4321. Site configuration is centralized in src/site.config.ts. New articles can be created with the bun pure new command. Build output goes to the ./dist directory and can be deployed to any static hosting platform. Deployment entry points for Vercel and Netlify are also provided, along with Docker and Docker Compose support.
Note that the README explicitly states that the Header and customization options are still under development (the template still exposes related configuration), so these capabilities may not yet be stable. Third-party assets such as demo images, fonts, and icons must be checked separately under their respective licenses; the Apache-2.0 license for the code does not cover these assets. External services such as domains and hosting may also incur costs.
Is it right for your project?
Use Cases
- Building a personal blog and publishing articles with images and text
- Setting up a project documentation site and browsing content with a table of contents and site-wide search
- Using components such as Aside, Tabs, and Timeline in articles to organize explanatory content
- Distributing content via RSS and sitemap, and improving share presentation with dynamic OG images
- Deploying build output to Vercel, Netlify, or other static hosting platforms
Suitable For
- Developers using Astro who want a ready-made foundation for blogs and documentation
- Maintainers of personal sites who need static output and can choose their own hosting platform
- Users who accept centralized site configuration in src/site.config.ts
- Users who can perform local development with Bun, pnpm, yarn, or npm
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Requires Node.js 22.12.0 or newer; Astro does not support odd-numbered Node.js versions such as 23
- 2
After cloning the repository, edit src/site.config.ts to customize the site, then install dependencies and start the development server
- 3
The development server runs at http://localhost:4321 by default
- 4
Use bun pure new to create a new blog post, and bun run build to generate static output in ./dist
- 5
The README states that the Header and customization options are still under development, and related configuration may not yet be stable
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the Apache-2.0 license in the public repository; the free scope is the code of this version and does not mean that external services or third-party assets are free.
Must comply with when using
- Free use, modification, commercial use, and distribution are permitted; when distributing, the Apache-2.0 license must be included.
- Modified files must prominently indicate changes, and relevant copyright, patent, trademark, and attribution notices must be retained.
- If the original project includes a NOTICE file, applicable attribution notices in it must be retained when distributing derivative works.
- The license includes an applicable contributor patent grant; initiating patent litigation as described in the license terminates that patent grant, and no trademark rights are granted.
- 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
- Using this theme requires Node.js 22.12.0 or newer, and Astro does not support odd-numbered Node.js versions such as 23; development and builds will not work properly if the environment does not meet these requirements.
- The README explicitly states that the Header and customization options are still under development, and related configuration may be unstable; these are known incomplete features and should not be treated as ready capabilities.
- To reuse theme components in other Astro projects, UnoCSS must be additionally introduced; otherwise, the components will not work as expected.
- Deploying to different static hosting platforms may require modifying the astro.config.ts configuration and is not out-of-the-box.
- Demo images, fonts, icons, and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's Apache-2.0 license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis
no-charge, royalty-free, irrevocable copyright license
Original License Text
Astro 6.0+ requires Node.js 22.12.0 or newer. Odd-numbered Node.js versions such as 23 are not supported by Astro.
Original README
Known issues: Header & customize options is still under development (template exposed still).
Original README
For other astro projects, UnoCSS is required.
Original README
https://github.com/cworld1/astro-theme-pure/blob/main/LICENSEhttps://github.com/cworld1/astro-theme-pure/blob/main/README.mdDepending on the deployment platform you choose, you may need to modify the `astro.config.ts` configuration file in the project.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-01. 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
- GitHub
- Documentation and maintenance reference score
- More documented · 95 / 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-26
- Screenshot last checked
- 2026-10-01
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.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: d24aa04abaee6f1abd1224d339d7fd5bd934893ed9daff037e8b57e15ddb1f45
2026-10-01T13:32:29.381Z
Source file / repository# Astro Theme Pure English | [简体中文](./README-zh-CN.md) A simple, fast and powerful blog & document theme built by Astro. [](https://astro-pure.js.org/) [](https://www.npmjs.com/package/astro-pure) [](https://github.com/cworld1/astro-theme-pure/releases) [](https://github.com/cworld1/astro-theme-pure/blob/main/LICENSE)   > [!NOTE] > Known issues: Header & customize options is still under development (template exposed still). ## Introduction Checkout [Demo Site →](https://astro-pure.js.org/) ### :fire: Features - [x] :rocket: Fast & high performance - [x] :star: Simple & clean design - [x] :iphone: Responsive design - [x] :mag: Full-site search built with [pagefind](https://pagefind.app/) - [x] :world_map: Sitemap & RSS feed - [x] :spider_web: SEO-friendly - [x] :book: TOC (table of contents) - [x] :framed_picture: Dynamic open graph generation for posts - [x] :framed_picture: Mediumzoom lightbox for images ### :package: Components Theme includes a lot of components, which can not only be used in the theme, but also in other astro projects. > For other astro projects, UnoCSS is required. See [Package README](https://github.com/cworld1/astro-theme-pure/blob/main/packages/pure/README.md#use-with-common-astro-project) for more details. - Basic components: `Aside`, `Tabs`, `Timeline`, `Steps`, `Spoiler`... - Advanced components: `GithubCard`, `LinkPreview`, `Quote`, `QRCode`... ### :white_check_mark: Lighthouse score [](https://pagespeed.web.dev/analysis/https-cworld-top/o229zrt5o4?form_factor=mobile&hl=en) ## Documentation [Docs](https://astro-pure.js.org/docs) | [Showcase](https://github.com/cworld1/astro-theme-pure/issues/10) ## Package See [astro-theme-pure](https://www.npmjs.com/package/astro-pure) on npm. ## Local development ### Environment requirements > [!WARNING] > Astro 6.0+ requires Node.js 22.12.0 or newer. Odd-numbered Node.js versions such as 23 are not supported by Astro. You can choose one of the following methods for project development: - [Bun](https://bun.com/get) - [Node.js](https://nodejs.org/) For deployment methods using container like [Docker](https://docs.docker.com/get-started/get-docker) & [Docker Compose](https://docs.docker.com/compose/install), please refer the documention [Using Docker Compose](https://astro-pure.js.org/docs/setup/using-docker-compose). ### Getting started 1. Clone the repository and enter the directory: ```shell git clone https://github.com/cworld1/astro-theme-pure.git cd astro-theme-pure ``` Edit `src/site.config.ts` to customize the site. 2. Install dependencies: ```shell bun install ``` 3. Start the development server: ```shell bun dev # or pnpm dev # or yarn run dev # or npm run dev ``` The development server runs at <http://localhost:4321> by default. ### Creating a new blog article After setting up either development environment, you can create a new blog article: ```shell bun pure new ``` ## Deployment ### Manual deployment Build the production site into the `./dist` directory: ```shell bun run build ``` Once the build is complete, the generated static files will be located in the `./dist` directory. You can deploy this directory to any platform that supports static site hosting. Preview the production build locally: ```shell bun preview ``` ### Static hosting platforms You can deploy your blog to any static site hosting platform. - Refer to the official [Astro Deployment Guide](https://docs.astro.build/en/guides/deploy/) for specific deployment methods. - Depending on the deployment platform you choose, you may need to modify the `astro.config.ts` configuration file in the project. | Vercel | Netlify | | :---------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------: | | [](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fcworld1%2Fastro-theme-pure) | [](https://app.netlify.com/start/deploy?repository=https://github.com/cworld1/astro-theme-pure) | ## Contributions To spend more time coding and less time fiddling with whitespace, this project uses code conventions and styles to encourage consistency. Code with a consistent style is easier (and less error-prone!) to review, maintain, and understand. ## Thanks - [Astro Cactus](https://github.com/chrismwilliams/astro-theme-cactus) - [Astro Resume](https://github.com/srleom/astro-theme-resume) - [Starlight](https://github.com/withastro/starlight) Other third party references are on [Docs#Contributions](https://astro-pure.js.org/docs/advanced/about). Appreciate for all open source libraries. ## License This project is licensed under the Apache 2.0 License. [](https://star-history.dera.page/#cworld1/astro-theme-pure&Date)
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
