A blog template powered by Astro https://astral-halo.netlify.app/
Find a file Use this template
2025-11-26 18:19:37 +08:00
.vscode feat: vscode settings 2025-02-12 12:21:20 +08:00
packages chore: update dependencies 2025-10-18 15:08:47 +08:00
public feat: support PWA 2025-04-19 14:40:23 +08:00
src feat: dual mode banner 2025-11-26 18:19:37 +08:00
.envrc build: add nix flake 2025-10-25 00:22:18 +08:00
.gitattributes chore: use LF in markdown 2025-06-27 15:31:02 +08:00
.gitignore build: add nix flake 2025-10-25 00:22:18 +08:00
.prettierignore chore: update .prettierignore 2025-02-24 09:52:47 +08:00
.prettierrc.cjs style: prettier format 2025-01-23 13:34:59 +08:00
.stylelintignore style: prettier format 2025-01-23 13:34:59 +08:00
astro.config.mjs feat: async rehype component 2025-10-12 17:46:52 +08:00
eslint.config.js style: prettier format 2025-01-23 13:34:59 +08:00
flake.lock build: add nix flake 2025-10-25 00:22:18 +08:00
flake.nix build: add nix flake 2025-10-25 00:22:18 +08:00
LICENSE doc: Create LICENSE 2025-02-01 19:21:29 +08:00
package.json build(deps): update denpendencies 2025-11-25 20:17:48 +08:00
pnpm-lock.yaml build(deps): update denpendencies 2025-11-25 20:17:48 +08:00
pnpm-workspace.yaml chore(i18n): move i18n to monorepo 2025-05-23 15:10:45 +08:00
pwa-assets.config.ts feat: support PWA 2025-04-19 14:40:23 +08:00
README.md docs: update README 2025-10-18 17:02:58 +08:00
README.zh-CN.md docs: update README 2025-10-18 17:02:58 +08:00
README.zh-TW.md docs: update README 2025-10-18 17:02:58 +08:00
stylelint.config.mjs build(deps): upgrade TailwindCSS to v4 2025-02-07 21:39:05 +08:00
tsconfig.json refactor: replace vue components with solidjs 2025-09-03 21:46:31 +08:00

Astral Halo

Warning

This project is still under development and may contain bugs and breaking changes. Use with caution.

Live Demo (Netlify) | English | 简体中文 | 繁體中文

Astral Halo is a static blog template developed with Astro.

Note

This project is hosted in the following repositories:

The mirror repository is only used for collecting issues and does not accept PRs.

Features/TODO

  • Built with Astro and Tailwind CSS (using daisyUI)
  • Freely switchable light/dark themes
  • Responsive design
  • Search functionality (currently only supports Pagefind)
  • Responsive article table of contents
  • Partially supports Obsidian features
    • Callout
    • Wiki links (only supports links to articles)
    • Backlinks (only supports displaying backlinks for Wiki links)
  • Comments system, supports:
  • Various components that can be used in articles
  • Smooth animations and page transitions
  • Useful JS script tools
  • PWA supports

Getting Started

  1. Use this template to generate a new repository or fork this repository.

  2. For local development, clone the repository, run pnpm install to install dependencies, and pnpm dev to start the development server.

    • If pnpm is not installed, first run npm install -g pnpm to install it.
  3. Customize your blog through the configuration file src/config.ts. Configuration documentation can be found in the comments of src/types/config.ts.

  4. Run pnpm new to create a new draft. Then run pnpm pub to publish it to the src/content/posts directory when finished.

  5. Refer to the official guide to deploy your blog to Vercel, Netlify, GitHub Pages, etc. Before deployment, edit the site settings in astro.config.mjs.

Article Front Matter

---
title: Article Title
slug: post-entry # The article will be generated at the path [BASE_URL]/posts/post-entry/
published: 1970-01-01T00:00:00Z
description: Article Description
category: Lorem
tags: [Foo, Bar]
cover: /path/to/cover.jpg
lang: en # Only needed when article language differs from site language in `config.ts`
comment: true # Enable comments, requires comment system to be enabled and configured in `config.ts`
---

Commands

All commands need to be run from the project root directory:

Command Action
pnpm install Install dependencies
pnpm dev Start dev server at localhost:4321
pnpm build Build static site to ./dist/
pnpm preview Preview built site locally
pnpm new Create new article
pnpm pub Publish draft
pnpm lint Check code
pnpm format Format code
pnpm astro ... Run Astro CLI

Acknowledgments

  • This project is inspired by Fuwari and references some of its code and design elements.
  • This project is inspired by Pure and references some of its code and design elements.
  • This project is inspired by Solitude and references some of its design elements.