一个基于 Astro 构建的现代化个人博客主题,专注于技术分享与实践。
- 🚀 基于 Astro 4.0+ 构建,性能卓越
- 📱 完全响应式设计,支持移动端
- 🌙 支持深色/浅色主题切换
- 📝 支持 Markdown 和 MDX 格式
- 🔍 内置搜索功能
- 📊 文章阅读时间统计
- 🏷️ 标签和分类系统
- 📈 SEO 优化
- 🎨 可自定义配置
- 💬 评论系统支持
- 📡 RSS 订阅支持
- 框架: Astro
- 样式: Tailwind CSS + Stylus
- 交互: Svelte
- 构建工具: Vite
- 包管理: pnpm
- 代码规范: Biome
- Node.js 18+
- pnpm
pnpm installpnpm devpnpm buildpnpm preview使用内置脚本快速创建新文章:
pnpm new-post helloword清理 src/content/assets 目录下未被引用的图片文件:
pnpm clean编辑 src/config.ts 文件来自定义博客配置:
export const siteConfig: SiteConfig = {
title: "Fuwari",
subtitle: "技术分享与实践",
lang: "zh_CN",
themeColor: {
hue: 250,
fixed: false,
},
banner: {
enable: false,
src: "assets/images/demo-banner.png",
position: "center",
},
favicon: [
{
src: "/favicon/icon.png",
}
]
}文章使用 Markdown 格式,支持 frontmatter:
---
title: 文章标题
published: 2024-01-01
description: 文章描述
image: ./cover.jpg
tags: [标签1, 标签2]
category: 分类
draft: false
---
# 文章内容
这里是文章正文...├── public/ # 静态资源
├── src/
│ ├── components/ # 组件
│ ├── content/ # 内容
│ │ ├── posts/ # 博客文章
│ │ └── assets/ # 资源文件
│ ├── layouts/ # 布局
│ ├── pages/ # 页面
│ ├── styles/ # 样式
│ └── config.ts # 配置文件
├── scripts/ # 脚本工具
└── package.json
在 src/config.ts 中修改 themeColor 配置:
themeColor: {
hue: 250, // 主色调 (0-360)
fixed: false, // 是否固定颜色
}- 全局样式:
src/styles/main.css - Markdown 样式:
src/styles/markdown.css - 变量定义:
src/styles/variables.styl
构建后的静态文件位于 dist/ 目录,可部署到任何静态托管平台。
欢迎提交 Issue 和 Pull Request!
感谢所有为这个项目做出贡献的开发者们!尤其感谢上游仓库