N Nesoriel

Engineering

为什么选择 Astro 构建静态组织官网

记录 Nesoriel 官网选择 Astro 的原因:静态输出、内容集合、低 JavaScript 成本和清晰部署边界。

2026/05/121 分钟阅读 更新 2026/06/08
AstroStatic SiteArchitecture

背景

Nesoriel 官网需要同时承担组织介绍、项目作品集和技术记录三类内容。它不需要登录、评论、数据库或后台管理,因此完整应用框架会带来不必要的运行时复杂度。

Astro 的静态输出模型更接近这个项目的真实需求:构建时生成页面,部署时只需要普通静态文件。

内容集合的价值

Astro Content Collections 让项目和 Notes 都能拥有类型化 frontmatter。对于开源组织网站来说,这比把内容写死在页面组件里更可维护。

const projects = defineCollection({
  schema: z.object({
    title: z.string(),
    status: z.enum(['idea', 'active', 'paused', 'archived']),
  }),
});

类型约束可以在构建阶段发现错误,例如漏写 slug、状态枚举拼错或日期格式不合法。

JavaScript 成本

官网的交互主要是主题切换、筛选和静态搜索。这些能力可以用少量浏览器脚本完成,不需要引入大型前端运行时。

部署边界

Astro 输出的 dist 可以被 GitHub Pages、EdgeOne Pages 或任意静态托管服务接管。对 Nesoriel 来说,这种可移植性比某个平台特有能力更重要。