Note

从 Hugo 到 Astro:我的科研个人网站迭代史

从 2024 年挑选 Hugo、MkDocs 和导航站方案,到后来用 Astro 重建内容系统:网站建设真正困难的是内容结构,而不是主题选择。

目录
目录

2024 年 10 月,我在思源笔记里建立了一个名为“网站管理”的项目。当时记录的主要内容是 Hugo 安装、WebStack 导航主题、Material for MkDocs,以及一批生物信息学在线平台。

那份笔记反映了我最初对个人网站的理解:先找到合适的框架和主题,再把资料搬进去。两年后回看,我对顺序的认识正好反了过来。

2024:先从工具和主题开始

当时我比较过三类方案:

  • Hugo:适合静态博客,生成速度快,主题生态成熟。
  • MkDocs:适合结构明确的技术文档和知识手册。
  • WebStack:适合把常用数据库、云平台和分析工具整理成导航页。

这些工具分别解决了“写文章”“写文档”和“管理链接”的问题,却没有回答一个更基础的问题:这个网站究竟要长期记录什么。

如果没有稳定的内容模型,更换主题只是在重新摆放同一批零散材料。

从工具清单转向内容主线

后来我逐渐把个人内容拆成几条不同的证据链:

  1. 笔记:记录方法、判断过程、失败经验和阶段复盘。
  2. 科研:展示课题、论文、软件著作和实际承担的角色。
  3. 实践:记录竞赛、协作和真实场景中的落地过程。
  4. 开源:展示可以复用、安装或继续维护的代码与工具。
  5. 关于:把教育、工作和研究方向组织成个人时间线。

同一个主题可能横跨多个栏目。例如,一个生信分析工具可以同时拥有:

  • 一篇解释设计过程的笔记;
  • 一个展示成果的科研项目页;
  • 一个指向 GitHub 的开源条目。

栏目之间通过标签和关联阅读连接,而不是把所有材料塞进一篇长文。

为什么后来选择 Astro

当前网站使用 Astro 和 Markdown 内容集合。对我来说,关键并不是框架本身“更先进”,而是它与内容组织方式更匹配:

  • 文章和项目仍然是可迁移的 Markdown 文件。
  • 不同栏目可以拥有不同字段和页面结构。
  • 构建结果是静态页面,适合个人网站长期维护。
  • 页面组件与内容分离,改版不需要重写全部文章。

这次从思源迁移历史笔记,也因此不采用简单复制。思源中的创建时间保留为文章的 pubDate,重新整理的时间记录为 updatedDate。这样,网站展示的是内容真正发生的时间,而不是文件被搬入仓库的时间。

我现在使用的迁移标准

一份本地笔记只有同时满足以下条件,才适合转成公开文章:

  • 有清楚的问题,而不只是链接或摘录。
  • 包含自己的选择、操作、判断或结果。
  • 去除上下文后,读者仍能理解。
  • 不包含未公开数据、第三方隐私和访问凭据。
  • 事实可以核查,过时内容能够明确标注。
  • 能够说清结论的适用范围和局限性。

剪藏、临时命令、账户配置和进行中的课题草稿仍然留在本地。公开网站不是本地知识库的镜像,而是经过编辑的个人工作档案。

从旧笔记得到的三个教训

1. 先设计内容,再选择工具

网站最难替换的是内容结构,不是框架。只要文章、项目和资源之间的关系清楚,Hugo、Astro 或其他静态工具都只是实现方式。

2. 历史记录不等于过时教程

旧笔记可以保留当时的判断,但需要增加今天的修订。例如,安装方式、安全设置和软件版本都会变化。文章应明确区分“当时怎么做”和“现在怎么建议”。

3. 个人网站应该呈现思考过程

一个结果页能够证明“做过什么”,但复盘文章才能说明“为什么这样做、哪里判断错了、后来如何改进”。后者更接近我希望长期积累的个人价值。

从 Hugo 到 Astro,真正发生的变化不是技术栈升级,而是我开始把网站当成一套持续编辑的内容系统,而不只是一个好看的博客主题。

建议阅读

讨论

评论使用 GitHub Discussions。首次加载需要访问 GitHub。