从 Jekyll 到 Astro:重构我的个人网站
记录个人网站从 Jekyll 迁移到 Astro 的技术升级、主要技术选择与 AI 辅助下的重构过程。
- 首次发布
- 最后更新
本文目录
版本
选择要比较的版本
- v2
- v1
一次技术升级
几年前,我使用 GitHub Pages、Jekyll 和 Minimal Mistakes 搭建了第一个个人网站,并将当时的建站过程记录在这个系列的第一版文章中。
进入 AI 时代后,技术调研和开发方式都发生了变化。我决定借此机会对个人网站进行一次完整的技术升级,不再沿用原来的 Jekyll 方案,而是选择新的技术栈重新构建网站。
整体技术选择
新网站以 Astro 为基础,默认生成静态页面,只在确实需要交互的部分加载客户端代码。这符合个人内容网站的主要形态,同时保留了以后扩展动态功能的空间。Tailwind CSS 用于建立统一的视觉和响应式规则,Markdown 与 MDX 继续作为长篇内容的主要载体。
文章、项目及其资源按照明确的内容约定组织,并由 Astro Content Collections 提供结构校验。网站支持中英文界面与内容回退;普通文章保持简单目录,发生实质修订时保存完整旧版本,并允许读者切换和比较。搜索、目录、代码展示和 SEO 等通用能力采用成熟工具,复杂交互则以局部组件嵌入文章,而不是让整个网站承担单页应用的运行成本。
AI 参与的重构过程
前端并不是我最擅长的领域,但我能够明确网站需要解决的问题,也能够判断架构、交互和最终效果是否符合预期。这次重构中的设计决策均由我作出,AI 主要承担资料检索、文档整理、代码实现、问题排查和测试补充等执行工作。
这次重构并非一次完成。许多问题只有在实际使用后才会暴露,例如排版层级、交互逻辑、响应式布局和内容模型之间的关系。重构因此始终伴随着审查和修正:通用能力优先使用成熟方案,确实需要定制的部分才保留少量项目代码;任何优化都不能以功能回退为代价。
AI 在其中提高了调研和实现效率,但网站的目标、取舍与验收标准仍然来自我对个人内容和使用体验的判断。