为什么选择 Astro 搭建个人站
从零开始的技术选型思考:为什么是 Astro,而不是 Next.js 或者纯手写静态页面。
动手搭站之前,我先想清楚了一个问题:这个网站真正需要什么?
答案很简单:以内容为主,交互极少,加载要快。基于这个前提,Astro 几乎是天然的最优解。
默认零 JavaScript
Astro 默认输出纯静态 HTML,不捆绑任何运行时。像滚动渐入这种轻交互,用几十行原生脚本配合 Intersection Observer 就能实现,完全没必要为此引入整个框架。
Content Collections 管理内容
文章用 Markdown 直接编写,通过 Content Collections 定义 frontmatter 校验规则。写文章的体验回到本质:建一个 .md 文件,写完保存,构建时自动生成页面。
部署足够简单
构建产物就是一堆静态文件,扔到 Vercel、Netlify 或者 GitHub Pages 都能直接跑,没有服务器、没有数据库、没有运维。
一点取舍
当然,Astro 也不是没有代价:生态比 React 小、动态交互多的应用并不适合。但对个人站这种「内容优先」的场景来说,这些取舍非常值得。