这是博客的第一篇文章,也是整条发布链路的起点。
我会把 GitHub Issues 当作一个轻量的内容管理系统:在熟悉的 Markdown 编辑器里写作,用标签组织文章,再由 Astro 在构建阶段读取内容并生成静态网站。
为什么选择这种方式
- 写作和代码都留在 GitHub,不需要额外维护后台。
- Issue 天然具备 Markdown、历史记录、标签和评论。
- Astro 只在构建阶段读取数据,网站访问时不依赖 GitHub API。
- 最终产物是普通的 HTML、CSS 和少量 JavaScript,可以部署到 GitHub Pages,也可以随时迁移到其他平台。
发布流程
- 创建一条带有
blog标签的 Issue。 - GitHub Actions 触发 Astro 构建。
- 构建程序通过 GitHub API 获取文章。
- Astro 生成首页、文章详情页、归档、RSS 和 Sitemap。
- 静态文件发布到 GitHub Pages。
接下来
这个博客会逐步补齐阅读体验、分类归档、订阅和评论入口。我也会在这里记录开源项目背后的设计思路、开发过程和复盘。
欢迎来到这里。