基于 Astro 生成静态站点,样式使用 Tailwind CSS,并通过 Swup 提供页面过渡动画
Firefly — Astro 博客模板
作者 slepoh
Firefly 是基于 Astro 的静态博客主题模板,在 Fuwari 基础上二次开发,提供多语言界面、Pagefind 全文搜索、多种壁纸与侧边栏布局,并可通过配置文件调整站点外观与功能。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
内置 i18n,UI 支持简体中文、繁体中文、英文、日文、俄文和韩文
使用 Pagefind 实现客户端全文搜索,可索引文章内容
壁纸支持横幅、全屏、全屏透明和纯色四种模式,主题色可 360° 色相调节
侧边栏支持单侧或双侧,文章列表支持单列列表与网格(多列/瀑布流)布局
扩展 Markdown 语法包含四种风格的提醒块、GitHub 仓库卡片和 Expressive Code 增强代码块
模板详细介绍
Firefly 是一个基于 Astro 的静态博客主题模板,由 slepoh 维护,仓库说明其是在 Fuwari 基础上的二次开发。模板使用 Astro 生成静态站点,样式层使用 Tailwind CSS,并借助 Swup 实现页面过渡动画。界面内置 i18n 国际化,UI 支持简体中文、繁体中文、英文、日文、俄文和韩文;搜索功能由 Pagefind 在客户端完成,可索引文章内容。
外观与布局方面,模板提供单侧边栏与双侧边栏配置,文章列表支持单列列表和网格(多列/瀑布流)布局,壁纸模式包括横幅壁纸、全屏壁纸、全屏透明壁纸和纯色背景,主题色支持 360° 色相调节,并可在亮色、暗色和跟随系统之间切换。导航栏的 Logo、标题和链接,以及页脚 HTML 内容均可自定义;字体、封面图、公告、评论、音乐播放器、看板娘、相册、友链、打赏等模块分别对应 src/config/ 目录下的独立配置文件。
内容写作方面,文章使用 Markdown/MDX,frontmatter 支持标题、发布日期、描述、封面图、标签、分类、草稿、语言、置顶和评论开关等字段。除 GitHub Flavored Markdown 外,还提供提醒块(Admonitions,支持 GitHub、Obsidian、VitePress、Docusaurus 四种风格)、GitHub 仓库卡片,以及基于 Expressive Code 的增强代码块,并集成 Mermaid 与 PlantUML 图表配置。动态内容存放在 src/content/dynamic/,一条动态对应一个 Markdown 文件,也可对接 Memos 作为数据源。
项目另有一个独立仓库 Firefly-Admin,通过 GitHub API 远程管理 TS 配置文件和 md/mdx 内容,保存即提交到 GitHub,可配合 Cloudflare 自动重新部署。本地开发要求 Node.js ≥ 22、pnpm ≥ 9,常用命令包括 pnpm dev、pnpm build、pnpm preview、pnpm check、pnpm format,以及创建文章和动态的 pnpm new-post、pnpm new-d。部署可参考 Astro 官方指南,Vercel、Netlify 等平台会根据环境自动选择适配器,构建产物输出到 dist。
使用限制方面,仓库采用 MIT 许可,允许免费使用、修改、商用和分发该版本代码,分发时需保留版权声明与完整 MIT 许可声明,代码按现状提供。演示图片、字体、图标等第三方素材需按各自许可单独核对;域名、托管等外部服务可能另外收费。模板未在资料中说明性能指标或生产环境表现,具体效果需自行构建验证。
适合你的项目吗?
适用场景
- 搭建以 Markdown/MDX 写作的个人静态博客,并需要多语言界面
- 希望用配置文件调整侧边栏、壁纸、主题色、字体、页脚等外观细节
- 需要客户端全文搜索、文章置顶、草稿、分类标签等常见博客能力
- 通过 Firefly-Admin 配合 GitHub API 远程管理内容,保存后触发自动重新部署
- 将站点部署到 Vercel、Netlify、Cloudflare Pages 等静态托管平台
适合人群
- 熟悉 Astro 或愿意按文档修改 src/config/ 配置文件的开发者
- 使用 Markdown/MDX 写作并需要多语言 UI 的个人博客作者
- 需要单侧/双侧边栏、列表或网格布局等可配置版式的站点
- 计划用 GitHub 仓库管理内容并部署到静态托管平台的用户
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
本地环境要求 Node.js ≥ 22 与 pnpm ≥ 9,克隆仓库后执行 pnpm install 安装依赖
- 2
博客设置集中在 src/config/ 目录,站点语言在 siteConfig.ts 中通过 SITE_LANG 设置
- 3
开发服务器用 pnpm dev 启动,默认地址为 http://localhost:4321;构建用 pnpm build,产物输出到 dist
- 4
部署时框架预设选 Astro,构建命令 pnpm run build,安装命令 pnpm install,输出目录 dist
- 5
演示图片、字体、图标等第三方素材需按各自许可单独核对,不能仅凭代码的 MIT 许可判断
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- README 建议先 Fork 到自己的仓库再克隆,并提示先点 Star 再 Fork;这是推荐性操作指引,并非强制使用限制。
- 若要使用 Memos 动态数据源,需自行部署或接入 Memos 服务,并在 dynamicConfig.ts 中配置 memos 选项,属于可选的外部服务依赖。
- 部署需借助 Vercel、Netlify、Cloudflare Pages、EdgeOne Pages 等第三方托管平台,这些外部服务可能产生费用或需要账号。
- 后台管理功能依赖独立的 Firefly-Admin 仓库,并通过 GitHub API 操作内容,需要 GitHub 账号与相应权限。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
**先 [Fork](https://github.com/CuteLeaf/Firefly/fork) 到自己仓库再克隆(推荐),记得先点 Star 再 Fork 哦!**
README 原文
也支持对接 [Memos](https://www.usememos.com/) 作为数据源,在 `src/config/dynamicConfig.ts` 中配置 `memos` 选项即可实时获取 Memos 动态
README 原文
**参考[官方指南](https://docs.astro.build/zh-cn/guides/deploy/)将博客部署至 Vercel, Netlify, Cloudflare Pages, EdgeOne Pages 等。**
README 原文
https://github.com/slepoh/Firefly/blob/master/LICENSEhttps://github.com/slepoh/Firefly/blob/master/README.md([Firefly-Admin](https://github.com/slepoh/Firefly-Admin))专为Firefly开发的一款内容管理后台,让Firefly的TS文件及md/mdx后缀的文件可视化管理,直接通过 GitHub API 远程增删改博客内容
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-13。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 80 / 100
- 技术栈
- Astro
- 网站类型
- 博客
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-08-21
- 截图检查日期
- 2026-10-13
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Astro。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: [email protected] · 2026-10-13
查看当时使用的来源资料
SHA-256: e85a1398afe3f91591d0e520d59fb15d9982b6be74b3884f0cf6fa93f8c168f9
2026-10-13T01:24:28.479Z
来源文件 / 仓库⚡ 静态站点生成: 基于 Astro 的超快加载速度和 SEO 优化 🎨 现代化设计: 简洁美观的界面,支持自定义主题色 📱 移动友好: 完美的响应式体验,移动端专项优化 🔧 高度可配置: 大部分功能模块均可通过配置文件自定义 ## 后台管理 ([Firefly-Admin](https://github.com/slepoh/Firefly-Admin))专为Firefly开发的一款内容管理后台,让Firefly的TS文件及md/mdx后缀的文件可视化管理,直接通过 GitHub API 远程增删改博客内容、配置博客信息等操作, 保存即提交到 GitHub,Cloudflare 自动重新部署。 ## ✨ 功能特性 ### 核心功能 - [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 ≥ 9 ### 本地开发部署 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` 可用 ### 社区教程 Cloudflare Workers 部署:[【不用服务器,无需备案,零成本搭建一个自己的个人博客】](https://www.bilibili.com/video/BV1hX9XBKEhm) ### 平台托管部署 - **参考[官方指南](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.ts # 页脚配置 │ ├── 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 帮助 |
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

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 · 博客

Firefly
Firefly 是一款基于 Astro 的静态博客主题,由 CuteLeaf 在 saicaca 的 Fuwari 模板基础上二次开发,主打清新美观的视觉风格。
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 · 作品集
