一个基于 Astro 的个人博客模板,适合记录 Go 后端、技术笔记和日常随想。
- 支持文章列表、归档、分类和标签
- 支持文章封面图和正文内图片
- 支持深色模式、搜索、RSS、站点地图
- 文章使用 Markdown 编写,维护简单
- Node.js 20+
- pnpm 9+
pnpm install
pnpm dev启动后访问:
http://127.0.0.1:4321/
pnpm dev # 启动开发环境
pnpm check # 类型检查
pnpm build # 构建生产版本
pnpm preview # 预览构建结果
pnpm new-post # 新建文章最简单的方式是用脚手架新建一篇文章:
pnpm new-post my-first-post会在 src/content/posts/ 下生成对应的 Markdown 文件。
文章头部示例:
---
title: 我的第一篇文章
published: 2026-07-13
updated: 2026-07-13
description: 这是一篇文章简介
image: ./cover.jpg
tags: [Go, 后端, 学习]
category: 技术笔记
draft: false
lang: zh_CN
---title:文章标题published:发布时间,决定首页和归档页排序updated:更新时间,可选description:文章简介,会显示在首页卡片和搜索结果里image:文章封面图tags:标签,可多个category:分类,通常一个draft:是否草稿,true的文章不会在生产环境展示lang:文章语言,可选
推荐把文章和图片放在同一个目录,例如:
src/content/posts/my-post/
index.md
cover.jpg
然后在 frontmatter 里写:
image: ./cover.jpg正文里直接用 Markdown 图片语法:
如果图片放在 public 目录,例如:
public/images/arch.png
那就写:
分类和标签都写在文章 frontmatter 里,不需要单独建文件。
tags: [Go, Gin, 后端]
category: 技术笔记查看方式:
- 归档页:
/archive/ - 按标签筛选:
/archive/?tag=Go - 按分类筛选:
/archive/?category=技术笔记 - 未分类文章:
/archive/?uncategorized=true
如果你要继续定制博客,主要改这些地方:
src/config.ts:站点标题、副标题、头像、简介、社交链接、banner 开关src/content/spec/about.md:关于页内容astro.config.mjs:正式站点域名sitepublic/favicon/:站点图标src/assets/images/:头像、banner 等本地图片
直接删除对应的 Markdown 文件即可。
如果文章有配套图片,也一起删除对应图片文件。
构建前建议先执行:
pnpm check
pnpm build然后把生成的 dist/ 部署到 Vercel、Netlify、GitHub Pages 或你自己的服务器。
这个项目已经不再使用模板示例内容,后续你只需要维护自己的文章和配置就行。