基于 Astro + Tailwind CSS 的静态站点生成,集成 Swup 页面过渡动画
Firefly — Astro 博客模板
作者 CuteLeaf
基于 Astro 与 Fuwari 二次开发的清新个人博客主题,主打多壁纸布局、i18n 与 Pagefind 全文搜索。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 6
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
四种背景模式(横幅、全屏壁纸、透明覆盖、纯色)与单/双侧栏、列表/网格布局可切换
基于 Pagefind 的客户端全文搜索,支持文章内容索引
i18n 多语言 UI,覆盖简中、繁中、英、日、俄、韩六种语言
独立的「动态」内容模块,支持本地 Markdown 或对接 Memos 数据源
src/config/ 下约二十个配置文件,主题色、字体、导航、页脚等均可配置
模板详细介绍
Firefly 是一款基于 Astro 的静态博客主题,由 CuteLeaf 在 saicaca 的 Fuwari 模板基础上二次开发,主打清新美观的视觉风格。它保留了原版 Fuwari 的布局,同时新增了横幅壁纸、全屏壁纸、透明覆盖和纯色四种背景模式,以及单侧栏/双侧栏、列表/网格等布局切换,配置集中在 src/config/ 目录下的一系列 TypeScript 文件中。
功能层面,主题使用 Astro + Tailwind CSS 构建,通过 Swup 实现页面过渡动画,内置基于 Pagefind 的客户端全文搜索,UI 支持简中、繁中、英、日、俄、韩六种语言。内容形态上除常规文章外还有「动态」模块,可用 pnpm new-d 快捷创建,也支持对接 Memos 作为数据源实时拉取。Markdown 方面扩展了四种风格的提醒块、GitHub 仓库卡片和基于 Expressive Code 的增强代码块。适合希望用 Astro 搭建个人技术博客、且愿意通过配置文件而非改源码来调整外观的开发者。
需要注意的门槛:环境要求 Node.js ≥ 22、pnpm ≥ 11,对本地工具链版本有明确下限。除简体中文外的多语言 UI 由 AI 翻译生成,README 明确说明可能存在错误。主题基于 Fuwari 二次开发,使用其组件设计时需按作者要求注明来源;流萤相关图片素材版权归米哈游所有,商用或再分发前应自行核对授权范围。
适合你的项目吗?
适用场景
- 个人技术博客或内容创作者的静态站点,重视视觉风格与布局自由度
- 希望用 Astro 生态、通过配置文件而非改源码来定制外观的项目
- 需要多语言界面或客户端全文搜索的博客
- 想用短动态(类似说说)补充长文写作的站点,可选接入 Memos
适合人群
- 熟悉或愿意学习 Astro、pnpm 与 TypeScript 配置文件的开发者
- 能接受 Node.js ≥ 22、pnpm ≥ 11 环境要求的用户
- 计划部署到 Vercel、Netlify、Cloudflare Pages 等静态托管平台的博客作者
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
本地环境需满足 Node.js ≥ 22 与 pnpm ≥ 11,低于该版本可能无法正常安装或构建
- 2
站点语言在 src/config/siteConfig.ts 中通过 SITE_LANG 设置,文章语言与站点不同时需在 frontmatter 中单独指定 lang
- 3
除简体中文外的多语言 UI 为 AI 翻译结果,README 提示可能存在错误,正式上线前建议逐项核对文案
- 4
主题 Fork 自 saicaca/fuwari,参考或使用其组件设计时需按作者要求注明来源
- 5
流萤相关图片素材版权归米哈游所有,涉及商用或再分发需自行确认授权
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 使用或参考 Firefly 的组件设计与代码时,需注明来源为 Firefly。
- 流萤相关图片素材版权归米哈游所有,不在 MIT 代码许可范围内,商用或再分发前需自行确认授权。
- 除简体中文外的多语言 UI 为 AI 翻译,可能存在错误,正式使用前需自行核对文案。
- 动态模块可选对接 Memos 作为数据源,需自行部署或拥有 Memos 服务并配置后方可实时获取动态。
- 本地开发与构建要求 Node.js ≥ 22、pnpm ≥ 11,低于该版本可能无法正常安装或构建。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
如果你参考或使用了 Firefly 的组件设计和相关代码,请注明来自 Firefly。
README 原文
流萤部分相关图片素材版权归游戏 [《崩坏:星穹铁道》](https://sr.mihoyo.com/) 开发商 [米哈游](https://www.mihoyo.com/) 所有
README 原文
Firefly 支持 i18n 多语言 UI,但除了简体中文,其他语言均为 AI 翻译转换,如有错误
README 原文
也支持对接 [Memos](https://www.usememos.com/) 作为数据源,在 `src/config/dynamicConfig.ts` 中配置 `memos` 选项即可实时获取 Memos 动态
README 原文
https://github.com/CuteLeaf/Firefly/blob/master/LICENSEhttps://github.com/CuteLeaf/Firefly/blob/master/README.md- Node.js ≥ 22 - pnpm ≥ 11
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-09-30。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 95 / 100
- 技术栈
- Astro
- 网站类型
- 博客
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-09-24
- 截图检查日期
- 2026-09-30
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Astro。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: 5788e0c29e410760961e30d03de7685f57075670596bfec08193635e79018b97
2026-09-30T15:46:52.274Z
来源文件 / 仓库
<img src="./docs/images/1131.png" width = "350" height = "500" alt="Firefly" align=right />
<div align="center">
# 流萤 / Firefly
> 一款清新美观的 Astro 静态博客主题模板
>
> 



>
> [](https://github.com/CuteLeaf/Firefly/stargazers)
[](https://github.com/CuteLeaf/Firefly/network/members)
[](https://github.com/CuteLeaf/Firefly/issues)
>
> [](https://ko-fi.com/Z8Z41NQALY)
>
> **QQ交流群:[1087127207](https://qm.qq.com/q/ZGsFa8qX2G)**
>
> 
[](https://deepwiki.com/CuteLeaf/Firefly)
[](https://ifdian.net/a/cuteleaf)
</div>
---
📖 README:
**[简体中文](README.md)** | **[繁體中文](docs/README.zh-TW.md)** | **[English](README.en.md)** | **[日本語](docs/README.ja.md)** | **[한국어](docs/README.ko.md)**
🚀 快速指南:
[**🖥️在线预览**](https://firefly.cuteleaf.cn/) /
[**📝使用文档**](https://docs-firefly.cuteleaf.cn/) /
[**🍀我的博客**](https://blog.cuteleaf.cn)
⚡ 静态站点生成: 基于 Astro 的超快加载速度和 SEO 优化
🎨 现代化设计: 简洁美观的界面,支持自定义主题色
📱 移动友好: 完美的响应式体验,移动端专项优化
🔧 高度可配置: 大部分功能模块均可通过配置文件自定义
<table width="100%" align="center">
<tr>
<td colspan="3" align="center">
<img src="./docs/images/1.webp" >
<br>横幅模式</td>
</td>
</tr>
<tr>
<td align="center"><img src="./docs/images/3.webp" width="300"><br>透明覆盖模式</td>
<td align="center"><img src="./docs/images/2.webp" width="300"><br>全屏壁纸模式</td>
<td align="center"><img src="./docs/images/4.webp" width="300"><br>纯色模式</td>
</tr>
</table>
<img alt="Lighthouse" src="./docs/images/Lighthouse.png" />
>[!TIP]
>
>Firefly 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板,专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈,提供了丰富的功能模块和高度可定制的界面,让您能够轻松打造出专业且美观的个人博客网站。
>
>**如果你参考或使用了 Firefly 的组件设计和相关代码,请注明来自 Firefly。**
>
>Firefly 也保留了原版 fuwari 的布局,可根据自己的喜好在配置文件中自由切换。
>
>**更多布局配置及演示请查看:[Firefly 布局系统详解](https://firefly.cuteleaf.cn/posts/guide/firefly-layout-system/)**
>
>Firefly 支持 i18n 多语言 UI,但除了简体中文,其他语言均为 AI 翻译转换,如有错误,欢迎提交 [Pull Request](https://github.com/CuteLeaf/Firefly/pulls) 修正。
## ✨ 功能特性
### 核心功能
- [x] **Astro + Tailwind CSS** - 基于现代技术栈的超快静态站点生成
- [x] **流畅动画** - Swup 页面过渡动画,提供丝滑的浏览体验
- [x] **响应式设计** - 完美适配桌面端、平板和移动设备
- [x] **多语言支持** - i18n 国际化,UI 支持简体中文、繁体中文、英文、日文、俄语、韩文
- [x] **全文搜索** - 基于 Pagefind 的客户端搜索,支持文章内容索引
### 个性化
- [x] **动态侧边栏** - 支持配置单侧边栏、双侧边栏
- [x] **文章布局** - 支持配置(单列)列表、网格(多列/瀑布流)布局
- [x] **字体管理** - 支持自定义字体,丰富的字体选择器
- [x] **页脚配置** - HTML 内容注入,完全自定义
- [x] **亮暗色模式** - 支持亮色/暗色/跟随系统三种模式
- [x] **导航栏自定义** - Logo、标题、链接全面自定义
- [x] **壁纸模式切换** - 横幅壁纸、全屏壁纸、全屏透明壁纸、纯色背景
- [x] **主题色自定义** - 360° 色相调节
如果你有好用的功能和优化,请提交 [Pull Request](https://github.com/CuteLeaf/Firefly/pulls)
## 🚀 快速开始
### 环境要求
- Node.js ≥ 22
- pnpm ≥ 11
### 本地开发部署
1. **克隆仓库:**
```bash
git clone https://github.com/Cuteleaf/Firefly.git
cd Firefly
```
**先 [Fork](https://github.com/CuteLeaf/Firefly/fork) 到自己仓库再克隆(推荐),记得先点 Star 再 Fork 哦!**
```bash
git clone https://github.com/you-github-name/Firefly.git
cd Firefly
```
3. **安装依赖:**
```bash
# 如果没有安装 pnpm,先安装
npm install -g pnpm
# 安装项目依赖
pnpm install
```
4. **配置博客:**
- 编辑 `src/config/` 目录下的配置文件自定义博客设置
5. **启动开发服务器:**
```bash
pnpm dev
```
博客将在 `http://localhost:4321` 可用
### 平台托管部署
- **参考[官方指南](https://docs.astro.build/zh-cn/guides/deploy/)将博客部署至 Vercel, Netlify, Cloudflare Pages, EdgeOne Pages 等。**
- **Vercel**、**Netlify** 等主流平台自动部署,会根据环境自动选择适配器。
框架预设: `Astro`
根目录: `./`
输出目录: `dist`
构建命令: `pnpm run build`
安装命令: `pnpm install`
[](https://vercel.com/new/clone?repository-url=https://github.com/CuteLeaf/Firefly&project-name=Firefly&repository-name=Firefly)
[](https://app.netlify.com/start/deploy?repository=https://github.com/CuteLeaf/Firefly)
## 📖 配置说明
> 📚 **详细配置文档**: 查看 [Firefly 使用文档](https://docs-firefly.cuteleaf.cn/) 获取完整的配置指南
### 设置网站语言
要设置博客的默认语言,请编辑 `src/config/siteConfig.ts` 文件:
```typescript
// 定义站点语言
const SITE_LANG = "zh_CN";
```
**支持的语言代码:**
- `zh_CN` - 简体中文
- `zh_TW` - 繁体中文
- `en` - 英文
- `ja` - 日文
- `ru` - 俄文
- `ko` - 韩文
### 配置文件结构
```
src/
├── config/
│ ├── index.ts # 配置索引文件
│ ├── siteConfig.ts # 站点基础配置
│ ├── analyticsConfig.ts # 统计分析配置
│ ├── announcementConfig.ts # 公告配置
│ ├── backgroundWallpaper.ts # 背景壁纸配置
│ ├── commentConfig.ts # 评论系统配置
│ ├── coverImageConfig.ts # 封面图配置
│ ├── displaySettingsConfig.ts # 设置面板配置
│ ├── dynamicConfig.ts # 动态页面配置
│ ├── effectsConfig.ts # 动画特效配置(樱花等)
│ ├── expressiveCodeConfig.ts # 代码高亮配置
│ ├── fontConfig.ts # 字体配置
│ ├── FooterConfig.html # 页脚配置
│ ├── friendsConfig.ts # 友链配置
│ ├── galleryConfig.ts # 相册配置
│ ├── licenseConfig.ts # 许可证配置
│ ├── musicConfig.ts # 音乐播放器配置
│ ├── navBarConfig.ts # 导航栏配置
│ ├── pioConfig.ts # 看板娘配置
│ ├── mermaidConfig.ts # Mermaid 图表配置
│ ├── plantumlConfig.ts # PlantUML 图表配置
│ ├── profileConfig.ts # 用户资料配置
│ ├── sidebarConfig.ts # 侧边栏布局配置
│ └── sponsorConfig.ts # 打赏配置
```
## ⚙️ 文章 Frontmatter
```yaml
---
title: My First Blog Post
published: 2023-09-09
description: This is the first post of my new Astro blog.
image: ./cover.jpg # 或使用 "api" 来启用随机封面图
tags: [Foo, Bar]
category: Front-end
draft: false
lang: zh-CN # 仅当文章语言与 `siteConfig.ts` 中的网站语言不同时需要设置
pinned: false # 置顶
comment: true # 是否允许评论
---
```
## 动态
动态文件保存在 `src/content/dynamic/` 中,一个 Markdown 文件对应一条动态。可以使用快捷命令创建:
```bash
pnpm new-d 今天心情不错,出去吃了一顿火锅
```
`pnpm new-dynamic <content>` 也可以使用,和 `new-d` 完全等价。
```yaml
---
published: 2026-07-15 16:15:29
pinned: true # 置顶
location: China # 位置
---
动态内容可以使用 Markdown 语法。
```
也支持对接 [Memos](https://www.usememos.com/) 作为数据源,在 `src/config/dynamicConfig.ts` 中配置 `memos` 选项即可实时获取 Memos 动态,支持置顶同步和图片附件展示。详见[动态文档](https://docs-firefly.cuteleaf.cn/zh/guide/dynamic.html)。
## 🧩 Markdown 扩展语法
除了 Astro 默认支持的 [GitHub Flavored Markdown](https://github.github.com/gfm/) 之外,还包含了一些额外的 Markdown 功能:
- 提醒块(Admonitions) - 支持 GitHub, Obsidian, VitePress, Docusaurus 四种风格主题配置 ([预览和用法](https://firefly.cuteleaf.cn/posts/markdown-extended/))
- GitHub 仓库卡片 ([预览和用法](https://firefly.cuteleaf.cn/posts/markdown-extended/))
- 基于 Expressive Code 的增强代码块 ([预览](http://firefly.cuteleaf.cn/posts/code-examples/) / [文档](https://expressive-code.com/))
## 🧞 指令
下列指令均需要在项目根目录执行:
| Command | Action |
| :------------------------- | :------------------------------------- |
| `pnpm install` | 安装依赖 |
| `pnpm dev` | 在 `localhost:4321` 启动本地开发服务器 |
| `pnpm build` | 构建网站至 `./dist/` |
| `pnpm preview` | 本地预览已构建的网站 |
| `pnpm check` | 检查代码中的错误 |
| `pnpm format` | 使用 Biome 格式化您的代码 |
| `pnpm new-post <filename>` | 创建新文章 |
| `pnpm new-d <content>` | 创建一条动态 |
| `pnpm new-dynamic <content>` | 创建一条动态(完整命令) |
| `pnpm astro ...` | 执行 `astro add`, `astro check` 等指令 |
| `pnpm astro --help` | 显示 Astro CLI 帮助 |
## 🙏 致谢
非常感谢 [saicaca](https://github.com/saicaca) 开发的 [fuwari](https://github.com/saicaca/fuwari) 模板,Firefly 就是基于这个模板二次开发
流萤部分相关图片素材版权归游戏 [《崩坏:星穹铁道》](https://sr.mihoyo.com/) 开发商 [米哈游](https://www.mihoyo.com/) 所有
### 技术栈
- [Astro](https://astro.build)
- [Tailwind CSS](https://tailwindcss.com)
- [Iconify](https://iconify.design)
### 灵感项目
- [fuwari](https://github.com/saicaca/fuwari)
- [hexo-theme-shoka](https://github.com/amehime/hexo-theme-shoka)
- [astro-koharu](https://github.com/cosZone/astro-koharu)
- [Mizuki](https://github.com/matsuzaka-yuki/Mizuki)
### 其他参考
- 博主`霞葉`的 [Bangumi 收藏](https://kasuha.com/posts/fuwari-enhance-ep2/) 页面组件
- 哔哩哔哩up主 `公公的日常` 的Q版 [流萤看板娘 Spine 切片数据](https://www.bilibili.com/video/BV1fuVzzdE5y)
## 📝 许可协议
本项目遵循 [MIT license](https://mit-license.org/) 开源协议,详细查看 [LICENSE](./LICENSE) 文件
最初 Fork 自 [saicaca/fuwari](https://github.com/saicaca/fuwari),感谢原作者的贡献
**版权声明:**
- Copyright (c) 2024 [saicaca](https://github.com/saicaca) - [fuwari](https://github.com/saicaca/fuwari)
- Copyright (c) 2025 [CuteLeaf](https://github.com/CuteLeaf) - [Firefly](https://github.com/CuteLeaf/Firefly)
根据 MIT 开源协议,你可以自由使用、修改、分发代码,但需保留上述版权声明。
## 🍀 贡献者
感谢以下贡献者对本项目做出的贡献,如有问题或建议,请提交 [Issue](https://github.com/CuteLeaf/Firefly/issues) 或 [Pull Request](https://github.com/CuteLeaf/Firefly/pulls)。
><a href="https://github.com/CuteLeaf/Firefly/graphs/contributors">
> <img src="https://contrib.rocks/image?repo=CuteLeaf/Firefly" />
></a>
感谢以下贡献者对原项目 [fuwari](https://github.com/saicaca/fuwari) 做出的贡献,为本项目奠定了基础。
><a href="https://github.com/saicaca/fuwari/graphs/contributors">
> <img src="https://contrib.rocks/image?repo=saicaca/fuwari" />
></a>
## ⭐ Star History
[](https://star-history.com/#CuteLeaf/Firefly&Date)
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

astrowind
⭕️ AstroWind: A free template using Astro v7 and Tailwind CSS v4. Astro starter theme.
Astro · 博客

astro-paper
A minimal, accessible and SEO-friendly Astro blog theme.
Astro · 博客

fuwari
✨A static blog template built with Astro.
Astro · 博客

astro-theme-cactus
A simple Astro theme. Use it to create your blog or website.
Astro · 作品集

astrofy
Astrofy is a free and open-source template for your Personal Portfolio Website built with Astro and TailwindCS…
Astro · 作品集
accessible-astro-starter
Accessible Astro Starter 是一个以无障碍为核心理念的 Astro 6 启动模板,由 incluud 团队维护。
Astro · 博客
