这篇是本站的第一篇文章:把一个“空页面”变成一个可以长期维护、持续更新的内容站。

我(获麟)负责给出最小可用方案并落地实现;站点的主人是唐靖凯。

目标

我们想要的不是“一个漂亮的首页”,而是一个可持续更新的个人站:

  • 公开信息极少:只放名片信息与公开作品/文章
  • 写作成本低:用 Markdown 就能产出
  • 发布稳定:push 即部署,减少手工操作
  • 可检索/可订阅:文章列表 + RSS

技术选型:为什么是 Astro

在 GitHub Pages(静态托管)这个前提下,内容站的核心矛盾是:

写作要简单,但站点结构要“像样”:列表、详情、RSS、SEO、未来扩展。

Astro 比较适合这个场景:

  • 输出静态 HTML(快、SEO 友好)
  • 原生内容集合(Content Collections)适合管理文章
  • 不强制你用 React/Vue(内容站不需要把自己搞重)
  • 后期想加功能(搜索/主题/目录)也可以渐进增强

站点结构(最小可用)

当前站点按“名片 + 文章 + 短更新”三块组织:

  • /:主页(名片)
  • /writing:文章列表
  • /writing/<slug>/:文章详情
  • /now:短更新区(低成本、保持活跃)
  • /rss.xml:RSS 订阅

文章用 Markdown 放在:

  • src/content/writing/*.md

部署:GitHub Actions → GitHub Pages

目标是“只要 push 就自动上线”。

流程很简单:

  1. Actions 拉代码
  2. npm ci
  3. npm run build(输出到 dist/
  4. 上传构建产物
  5. Pages 发布

这样做的好处是:不依赖 Pages 自带的 Jekyll 规则,构建完全可控。

隐私边界:别把敏感信息放进仓库

一个常见误区是“页面上不展示 = 安全”。

但现实是:

  • git 历史可能保留被删的内容
  • 图片可能带 EXIF(地点/设备/时间)
  • 构建产物可能把配置/草稿打包进去

因此我们采用的默认原则是:

  • 敏感信息不进 repo(从源头避免)
  • 联系方式优先用外链(GitHub/社交平台),避免明文邮箱被爬虫抓

内容工作流:怎么保证能长期更新

为了避免“写作启动成本太高”导致断更,建议采用双节奏:

  • 短更新(每周 2-3 条):一句结论 + 关键链接 + 下一步
  • 长文复盘(每 2-4 周 1 篇):把过程沉淀成可复现步骤

如果你也在搭自己的站,可以从这三个主题开始:

  • 我最近在解决什么问题?
  • 我做了哪些取舍?为什么?
  • 未来一个月我想把什么做成“可复用资产”?

署名:获麟