1514 字
4 分钟
Mizuki 博客主题详解
2026-04-02

项目简介#

Mizuki 是一个现代化、功能丰富的静态博客模板,使用 Astro 构建,具有先进的功能和美丽的设计。该项目采用 Material Design 3 设计语言,提供了完整的博客功能和丰富的自定义选项。

核心特性#

设计与界面#

  • 🎨 现代设计:采用 Material Design 3 设计语言
  • ✨ 平滑动画:使用 Swup 实现平滑页面过渡
  • 🌓 主题切换:支持亮色/暗色主题,带系统偏好检测
  • 🎯 自定义主题:可自定义主题颜色和动态横幅轮播
  • 🖼️ 全屏背景:支持背景图片轮播、透明度和模糊效果
  • 📱 响应式设计:适配所有设备屏幕
  • 🔤 精美排版:使用 JetBrains Mono 字体

内容与搜索#

  • 🔍 高级搜索:基于 Pagefind 的搜索功能
  • 📝 增强 Markdown:支持语法高亮和扩展功能
  • 📋 交互式目录:支持自动滚动
  • 📡 RSS 订阅:自动生成订阅源
  • ⏱️ 阅读时间:自动估算阅读时间
  • 🏷️ 分类标签:完整的文章分类和标签系统

特殊页面#

  • 🎬 动画追踪:追踪动画观看进度和评分
  • 👥 好友页面:展示好友网站的精美卡片
  • 📅 日记页面:分享生活瞬间,类似社交媒体
  • 📚 归档页面:文章的有序时间线视图
  • 👤 关于页面:可自定义的个人介绍
  • 🖼️ 相册页面:带有精美布局的照片画廊
  • 📱 设备页面:展示您的设备和装备
  • 💻 技能页面:展示您的技能和专业知识
  • 📈 时间线页面:事件和经历的时间顺序视图
  • 🔧 项目页面:突出您的个人和专业项目

技术特性#

  • 💾 增强代码块:基于 Expressive Code
  • 📐 数学公式:支持 KaTeX 渲染
  • 🖼️ 图片优化:带 PhotoSwipe 画廊集成
  • 🔍 SEO 优化:包括站点地图和元标签
  • ⚡ 性能优化:带懒加载和缓存
  • 💬 评论系统:集成 Twikoo
  • 📊 图表支持:Mermaid 图表功能
  • 🔒 密码保护:用于敏感内容
  • 📦 内容分离:用于团队协作
  • 📈 性能监控:集成 Lighthouse
  • 🌍 国际化:支持多语言
  • 🔐 加密内容:支持私人帖子
  • 🌸 Live2D 吉祥物:集成 Pio

技术栈#

技术用途
Astro静态站点生成器
Tailwind CSS响应式样式
Svelte交互式组件
TypeScript类型安全
Swup页面过渡动画
Pagefind搜索功能
Expressive Code代码高亮
KaTeX数学公式
Mermaid图表渲染
Twikoo评论系统

快速开始#

安装#

# 克隆仓库
git clone https://github.com/Ruthlessa/Mizuki.git
cd Mizuki
# 安装依赖
# 如果尚未安装 pnpm
npm install -g pnpm
# 安装项目依赖
pnpm install

配置#

  1. 编辑 src/config.ts 来自定义博客设置
  2. 更新站点信息、主题颜色、横幅图片和社交链接
  3. 配置功能页面功能

启动开发服务器#

pnpm dev
# 您的博客将在 http://localhost:4321 可用

内容管理#

创建新帖子#

pnpm new-post <文件名>

编辑帖子#

修改 src/content/posts/ 中的文件

自定义特殊页面#

编辑 src/content/spec/ 中的文件

添加图片#

将图片放在 src/assets/public/

部署#

将您的博客部署到任何静态托管平台:

  • Vercel:将您的 GitHub 仓库连接到 Vercel
  • Netlify:直接从 GitHub 部署
  • GitHub Pages:使用包含的 GitHub Actions 工作流
  • Cloudflare Pages:连接您的仓库

环境变量配置#

参考 .env.example 进行配置

部署前,请更新 src/config.ts 中的 siteURL。 不建议 将 .env 文件提交到 Git。.env 文件应仅用于本地调试或构建。对于云平台部署,建议通过平台的 环境变量 设置进行配置。

帖子前置元数据格式#

---
title: 我的第一篇博客文章
published: 2026-04-02
description: 这是我的新博客的第一篇文章。
image: ./cover.jpg
tags: [标签1, 标签2]
category: 前端
draft: false
pinned: false
comment: true
lang: en # 仅当文章语言与 config.ts 中的站点语言不同时使用
---

项目结构#

Mizuki/
├── src/
│ ├── components/ # 组件
│ ├── content/ # 内容
│ │ ├── posts/ # 博客文章
│ │ └── spec/ # 特殊页面内容
│ ├── data/ # 数据文件
│ ├── layouts/ # 布局
│ ├── pages/ # 页面
│ ├── styles/ # 样式
│ ├── types/ # 类型定义
│ ├── utils/ # 工具函数
│ └── config.ts # 站点配置
├── public/ # 静态资源
├── scripts/ # 脚本工具
├── docs/ # 文档
└── package.json # 项目配置

特色功能#

自动分辨率适配#

  • 智能算法:根据设备屏幕分辨率调整内容布局
  • 最佳体验:为所有设备提供最佳观看体验

组件配置系统#

  • 统一配置:全新的模块化组件配置系统
  • 动态管理:支持动态组件管理和顺序配置
  • 配置驱动:重构的 SideBar 组件,实现完全基于配置的组件加载
  • 响应式适配:组件支持响应式布局

布局系统优化#

  • 动态侧边栏:支持左右侧边栏切换,自动布局适配
  • 智能目录:当侧边栏在右侧时,文章导航自动移至左侧
  • 网格布局:优化了 CSS Grid 布局,解决容器宽度异常问题

性能优化#

  • 懒加载:图片和组件懒加载
  • 缓存策略:合理的缓存配置
  • 代码分割:按需加载组件
  • 预加载:关键资源预加载

浏览器兼容性#

  • Chrome >= 60
  • Firefox >= 55
  • Safari >= 12
  • Edge >= 79

许可证#

项目采用 MIT License 开源协议,欢迎提交 Issue 和 Pull Request!

项目价值#

Mizuki 博客主题为开发者提供了:

  • 开箱即用:完整的博客功能,无需从零开始
  • 高度自定义:丰富的配置选项,满足个性化需求
  • 现代技术:使用最新的前端技术栈
  • 性能优先:优化的性能和用户体验
  • 学习资源:代码结构清晰,适合学习现代前端开发

未来发展#

该项目可以通过以下方式进一步扩展:

  • 更多主题:提供更多预设主题
  • 插件系统:支持插件扩展功能
  • 多语言支持:增强国际化功能
  • PWA 支持:添加渐进式Web应用功能
  • 管理后台:开发完整的内容管理后台

Mizuki 博客主题是一个功能强大、设计精美的静态博客解决方案,为开发者提供了一个快速搭建个人博客的优秀选择。无论是技术博客、个人日记还是作品集展示,Mizuki 都能满足您的需求。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

Mizuki 博客主题详解
https://github.com/Ruthlessa/Mizuki/tree/main/src/content/posts/mizuki-blog-theme
作者
无情
发布于
2026-04-02
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录