从 Astro 版 Firefly 迁移到 Hexo,使用 EJS 模板引擎与模块化组件架构
hexo-theme-firefly — Astro 博客模板
作者 LKDenchin
Firefly 是一个从 Astro 版 Firefly 迁移而来的 Hexo 博客主题,采用 EJS 模板引擎,提供双侧边栏、暗黑模式、动态色相、响应式布局与看板娘集成,目前处于开发者预览阶段。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
支持双侧边栏布局、暗黑模式切换与动态色相调节
多端响应式适配,并提供 Spine / Live2D 看板娘集成
内置首页、归档、分类、标签、文章详情等系统页面
提供动态、友链、相册、追番、留言板等自定义分页面及对应数据源配置
模板详细介绍
Firefly 是运行在 Hexo 博客框架上的个人博客主题,从 Astro 版 Firefly 迁移而来,并基于 Fuwari 进行二次开发。主题使用 EJS 模板引擎与模块化组件架构,提供双侧边栏布局、暗黑模式切换、动态色相调节和多端响应式适配,并支持 Spine / Live2D 看板娘。
主题内置首页、归档、分类、标签、文章详情等系统页面,同时提供分类、标签、关于、动态/说说、友链、赞助、相册、追番、留言板等自定义分页面。动态页由 scripts/generators/dynamic.js 自动生成,数据源为 source/_dynamics/ 下的 Markdown 文件;友链数据可放在 source/_data/friends.yml;相册与赞助内容在主题 _config.yml 的对应节点配置。文章支持封面、置顶、TOC、评论、版权声明与密码保护等 Front-matter 字段。
主题目前处于开发者预览阶段,README 明确说明配置项与组件接口可能随版本更新微调。安装方式为将仓库克隆到 themes/firefly,并在 Hexo 根目录 _config.yml 中设置 theme: firefly;还需安装 hexo-generator-search 与 hexo-wordcount 插件。注意 Hexo 根目录 _config.yml 中的 theme_config 字段会覆盖主题主配置文件,建议直接在 themes/firefly/_config.yml 中完成配置。
适合你的项目吗?
适用场景
- 使用 Hexo 搭建个人博客并希望获得清新视觉风格与双侧边栏布局
- 需要暗黑模式、动态色相与响应式适配等外观能力
- 希望通过 Markdown 文件维护动态/说说内容并自动生成页面
- 需要友链、相册、追番、留言板等扩展页面来组织博客内容
适合人群
- 使用 Hexo 并熟悉 EJS 模板与 YAML 配置的博客作者
- 接受开发者预览阶段、可跟进配置与接口调整的用户
- 需要分类、标签、归档、TOC、评论与密码保护等文章功能的站点
- 希望集成 Spine / Live2D 看板娘的个人博客
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
在 Hexo 博客根目录执行 git clone https://github.com/LKDenchin/hexo-theme-firefly.git themes/firefly
- 2
在 Hexo 根目录 _config.yml 中设置 theme: firefly,并注意 theme_config 字段会覆盖主题主配置文件
- 3
安装依赖插件:npm install hexo-generator-search hexo-wordcount --save
- 4
使用 npx hexo clean、npx hexo generate、npx hexo server 进行本地构建与预览
- 5
自定义分页面需通过 hexo new page 创建并在 Front-matter 中指定 type 或 layout
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 主题处于开发者预览阶段,配置项与组件接口可能随版本更新发生微调,升级时需留意兼容性变化。
- 需额外安装 hexo-generator-search 与 hexo-wordcount 两个 Hexo 插件依赖,否则搜索与字数统计等功能不可用。
- 若在 Hexo 根目录 _config.yml 使用 theme_config 字段,会覆盖主题主配置,建议直接在 themes/firefly/_config.yml 中配置。
- 动态/说说页由脚本自动生成,不能通过 hexo new page 手动创建,数据需放在 source/_dynamics/ 目录的 Markdown 文件中。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
Firefly 主题目前处于 _开发者预览_ 阶段,正在持续优化迭代。**配置项与组件接口可能随版本更新微调。**
README 原文
npm install hexo-generator-search hexo-wordcount --save
README 原文
Hexo 根目录 `_config.yml` 中的 `theme_config:` 字段会覆盖主题主配置文件。建议将相关配置直接在 `themes/firefly/_config.yml` 中完成。
README 原文
https://github.com/LKDenchin/hexo-theme-firefly/blob/master/LICENSEhttps://github.com/LKDenchin/hexo-theme-firefly/blob/master/README.md由 `scripts/generators/dynamic.js` 脚本**自动生成**,无需手动执行 `hexo new page`。
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-01。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 92 / 100
- 技术栈
- Astro · Hexo
- 网站类型
- 博客
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-08-30
- 截图检查日期
- 2026-10-01
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Astro。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: 766c048e9aadf10cd2ee2a1aad65d703847fb28a8a4912bf2236b5c388f74785
2026-10-01T03:11:31.833Z
来源文件 / 仓库# Firefly (Hexo Theme) [English](README.en.md) | 中文 Firefly 是一款基于 [Hexo](https://hexo.io/) 博客框架的个人博客主题,从 [Astro 版 Firefly](https://github.com/CuteLeaf/Firefly) 迁移而来。 它采用模块化的组件架构与 EJS 模板引擎,支持双侧边栏布局、暗黑模式切换、动态色相调节、多端响应式适配及 Spine / Live2D 看板娘集成。 ## 开发者预览 Firefly 主题目前处于 _开发者预览_ 阶段,正在持续优化迭代。**配置项与组件接口可能随版本更新微调。** ## 运行与安装 ### 通过 Git 安装 在 Hexo 博客根目录下克隆主题仓库至 `themes/firefly` 目录: ```sh git clone https://github.com/LKDenchin/hexo-theme-firefly.git themes/firefly ``` ### 配置启用 修改 Hexo 博客根目录下的 `_config.yml` 文件: ```yaml theme: firefly ``` > **注意**:Hexo 根目录 `_config.yml` 中的 `theme_config:` 字段会覆盖主题主配置文件。建议将相关配置直接在 `themes/firefly/_config.yml` 中完成。 ### 安装依赖插件 ```sh npm install hexo-generator-search hexo-wordcount --save ``` ### 本地编译与运行 ```sh # 清除构建缓存 npx hexo clean # 编译静态文件 npx hexo generate # 启动本地服务 (默认地址 http://127.0.0.1:4000) npx hexo server ``` --- ## 页面路由与分页面指南 Firefly 支持多种系统页面与自定义分页面,详细路由及配置要求如下: ### 1. 系统核心页面 | 页面名称 | 路由路径 | 模板文件 | 说明 | |:---|:---|:---|:---| | **首页** | `/` | `layout/index.ejs` | 显示文章列表(支持 List 与 Grid 视图)及首页 Banner | | **归档页** | `/archives/` | `layout/archive.ejs` | 按年份与月份归档展示所有文章 | | **分类汇总页** | `/categories/` | `layout/categories.ejs` | 聚合全站文章分类 | | **分类详情页** | `/categories/:name/` | `layout/category.ejs` | 展示指定分类下的文章列表 | | **标签汇总页** | `/tags/` | `layout/tags.ejs` | 聚合全站标签云 | | **标签详情页** | `/tags/:name/` | `layout/tag.ejs` | 展示指定标签下的文章列表 | | **文章详情页** | `/:year/:month/:day/:title/` | `layout/post.ejs` | 文章正文、TOC 浮动目录、版权信息与评论区 | ### 2. 自定义功能分页面 需通过 `hexo new page <name>` 创建,并在其 Front-matter 中显式指定 `type` 或 `layout` 属性: #### 分类页 (`/categories/`) 命令:`hexo new page categories` 文件路径:`source/categories/index.md` Front-matter 配置: ```yaml --- title: 分类 type: categories --- ``` #### 标签页 (`/tags/`) 命令:`hexo new page tags` 文件路径:`source/tags/index.md` Front-matter 配置: ```yaml --- title: 标签 type: tags --- ``` #### 关于页 (`/about/`) 命令:`hexo new page about` 文件路径:`source/about/index.md` Front-matter 配置: ```yaml --- title: 关于 layout: about --- ``` #### 动态 / 说说页 (`/dynamic/`) 由 `scripts/generators/dynamic.js` 脚本**自动生成**,无需手动执行 `hexo new page`。 数据源:在博客根目录的 `source/_dynamics/` 目录下创建 Markdown 文件(如 `source/_dynamics/status-01.md`): ```yaml --- title: 今日随想 date: 2026-01-01 12:00:00 author: Firefly location: 上海 sticky: true images: - /img/cover.avif --- 动态正文内容,支持 Markdown 渲染。 ``` #### 友链页 (`/friends/`) 命令:`hexo new page friends` 文件路径:`source/friends/index.md` Front-matter 配置: ```yaml --- title: 友链 type: friends --- ``` 数据源:可选择在 `source/_data/friends.yml` 文件中配置友链数据列表。 #### 赞助页 (`/sponsor/`) 命令:`hexo new page sponsor` 文件路径:`source/sponsor/index.md` Front-matter 配置: ```yaml --- title: 赞助 type: sponsor --- ``` 配置文件:在 `_config.yml` 的 `sponsor:` 节点下配置二维码图片与赞助列表。 #### 相册页 (`/gallery/`) 命令:`hexo new page gallery` 文件路径:`source/gallery/index.md` Front-matter 配置: ```yaml --- title: 相册 type: gallery --- ``` 配置文件:在 `_config.yml` 的 `gallery:` 节点下配置图片瀑布流列宽与相册项目。 #### 追番 / 番组页 (`/bangumi/`) 命令:`hexo new page bangumi` 文件路径:`source/bangumi/index.md` Front-matter 配置: ```yaml --- title: 追番 type: bangumi --- ``` #### 留言板页 (`/guestbook/`) 命令:`hexo new page guestbook` 文件路径:`source/guestbook/index.md` Front-matter 配置: ```yaml --- title: 留言板 type: guestbook --- ``` --- ## 文章 Front-matter 配置规范 在 Markdown 文章头部通过 Front-matter 配置参数: ```yaml --- title: 文章标题 date: 2026-01-01 12:00:00 updated: 2026-01-02 18:00:00 categories: [技术] tags: [Hexo, 前端] description: 文章简短描述 cover: /img/cover.jpg # 文章封面图 top: true # 置顶文章 toc: true # 显示浮动目录 comments: true # 允许评论 copyright: true # 显示版权声明 password: "" # 加密密码(留空不加密) --- ``` --- ## 参与贡献 参见 [CONTRIBUTING.md](CONTRIBUTING.md)。 欢迎通过 [GitHub Issues](https://github.com/LKDenchin/hexo-theme-firefly/issues) 提交 Bug 反馈或 Pull Request。 --- ## 致谢 - 博客框架:[Hexo](https://hexo.io/) - 模板引擎:[EJS](https://ejs.co/) - 视觉与概念设计:[Firefly (Astro 版)](https://github.com/CuteLeaf/Firefly) by CuteLeaf / [fuwari](https://github.com/saicaca/fuwari) by saicaca --- ## 许可证 [MIT License](LICENSE)
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

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 · 作品集
