AstroHexoStarter

astro-astrofly — Astro Starter Template

By mocusez

An Astro blog theme inspired by hexo-theme-butterfly, supporting Chinese and English, Pagefind full-text search, PWA, and Waline comments.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-03View source

What stands out

A quick read of the recorded project description.

01

A static blog theme built on Astro, inspired by hexo-theme-butterfly and HsuBlog

02

Built-in Chinese and English content with language-specific routing

03

Uses Pagefind for static full-text search, supporting multiple languages and mobile

04

Supports PWA installation and offline access, with automatic cache version updates at build time

05

Integrates the Waline comment system, including page view statistics and dark mode

06

Uses Tailwind CSS with light/dark theme switching and automatically generates a sitemap

Template Details

Astrofly is an Astro-based blog theme whose author states it was inspired by hexo-theme-butterfly and HsuBlog. The repository is released under the MIT license; this version of the code may be used, modified, used commercially, and distributed for free, provided the copyright and license notice are retained when distributing.

The theme targets multilingual blogs: it includes built-in Chinese (zh-CN) and English content with language-specific routing, search is provided by Pagefind and supports multiple languages, and comments are integrated with Waline with page view statistics and dark mode. It also includes PWA support (installable, offline access, automatic cache versioning at build time), Shiki syntax highlighting (including custom MLIR/LLVM syntax), Tailwind CSS styling with light/dark theme switching, automatic sitemap generation, and a mobile-responsive layout.

There are two ways to use it: clone the repository and install dependencies, or create a project using this repository as a template via pnpm create astro; both approaches require moving the example_content directory to content as the content directory. The repository also provides scripts such as npm run newpage to generate articles and npm run sync to publish the site, and accepts translation contributions via Weblate.

Limitations: the free scope refers only to this version of the code; third-party assets such as demo images, fonts, and icons must be checked against their respective licenses; external services such as domains and hosting may incur separate charges. The Astro version number mentioned in the README was not verified in the dependency manifest and is not repeated here.

AstroHexoLauncher

Is it right for your project?

Use Cases

  • Building a Chinese-English bilingual personal blog or technical notes site
  • Blogs that need static full-text search without relying on a backend search service
  • Sites where readers can install and read offline via PWA
  • Blogs using Waline as the comment and page view statistics solution

Suitable For

  • Developers familiar with Astro and command-line build workflows
  • Bloggers who need Chinese-English bilingual content and language routing
  • Users who want to use and modify the theme code for free under the MIT license

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After cloning the repository, run pnpm install and pnpm approve-builds, and move example_content to content

  2. 2

    You can also create a project from the template with pnpm create astro@latest -- --template mocusez/astro-astrofly

  3. 3

    The development server runs at localhost:4321 by default, and the build output goes to ./dist/

  4. 4

    External dependencies such as comments and search must be configured separately according to their documentation, and third-party assets must have their licenses checked

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is this version of the code and does not mean external services or third-party assets are free.

Must comply with when using

  • This version of the code may be used, modified, used commercially, and distributed for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full 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.
  • The comment feature depends on the third-party Waline service; you must deploy or connect to a Waline server yourself and configure the corresponding address. This is an external service dependency, not included with the theme code.
  • Full-text search is provided by the third-party Pagefind; the Pagefind indexing step must be run at build time, and search capability depends on this external tool.
  • Translation collaboration is conducted through the third-party platform Weblate; participating in translation requires registering and using an account on that external service.
  • After installation, you must run pnpm approve-builds to approve dependency build scripts; otherwise some dependencies may not build properly.
  • The example_content directory must be moved to content to be used as the content directory; otherwise the site content will be missing.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

- **Waline Comments** — Integrated [Waline](https://waline.js.org/) comment system with pageview counting and dark mode support

Original README

- **Full-Text Search** — Lightning-fast static search powered by [Pagefind](https://pagefind.app/), with multilingual support and mobile optimization

Original README

We welcome translation contributions via Weblate!

Original README

pnpm approve-builds

Original README

mv example_content content # Use example content as your content directory

Original README
https://github.com/mocusez/astro-astrofly/blob/master/LICENSEhttps://github.com/mocusez/astro-astrofly/blob/master/README.md

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 · 88 / 100
Technologies
Astro · Hexo
Website type
Starter
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-15
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-04

Inspect the recorded source material

SHA-256: f5de2922ef6c321838bff86586812f386c1128a41e5e0a44cc20575659bb95e5

2026-10-04T07:34:58.377Z

Source file / repository

# Astrofly

[![Built with Astro](https://astro.badg.es/v1/built-with-astro.svg)](https://astro.build)

English | [简体中文](./README_zh-CN.md)

Inspire by the [hexo-theme-butterfly](https://github.com/jerryc127/hexo-theme-butterfly) and [HsuBlog](https://github.com/KraHsu/HsuBlog)

![image-20241226125647006](README.assets/image-20241226125647006.png)

## Features

- **Astro v6** — Built on the latest Astro for fast, static-first performance
- **Bilingual Support** — Chinese (zh-CN) and English content with language-specific routing
- **Full-Text Search** — Lightning-fast static search powered by [Pagefind](https://pagefind.app/), with multilingual support and mobile optimization
- **PWA Support** — Installable as a Progressive Web App with offline access, auto cache versioning on build
- **Waline Comments** — Integrated [Waline](https://waline.js.org/) comment system with pageview counting and dark mode support
- **Expressive Code** — Syntax highlighting powered by Shiki, with custom MLIR/LLVM grammar support
- **Tailwind CSS** — Utility-first styling with dark/light theme toggle
- **Sitemap** — Auto-generated sitemap for SEO
- **Responsive Design** — Mobile-friendly layout with adaptive navigation

## 💻 Installation

- Git

 ```
  git clone https://github.com/mocusez/astro-astrofly.git blog
  cd blog
  pnpm install
  pnpm approve-builds
  mv example_content content  # Use example content as your content directory
 ```

### Use as template

```
pnpm create astro@latest -- --template mocusez/astro-astrofly
mv example_content content  # Use example content as your content directory
```



## 🧞 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                     |
| `npm run newpage`         | Generate new post base on template               |
| `npm run sync`            | Publish the site by system script                |

## 🌍 Translation

We welcome translation contributions via Weblate!

[![Translation status](https://hosted.weblate.org/widget/astro-astrofly/astro-astrofly/svg-badge.svg)](https://hosted.weblate.org/projects/astro-astrofly/astro-astrofly/)

Visit [Weblate](https://hosted.weblate.org/projects/astro-astrofly/astro-astrofly/) to help translate Astrofly into your language.

Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.