为什么我的个人作品站最终选择 Astro

预计阅读时间:10 分钟

上一篇,我把 Astro、Next.js、Nuxt 放在一起做了对比。

那篇更偏横向分析:三个框架都能做个人官网,但适合的场景不一样。

真正落到自己的项目上,问题就变成了另一个:我的个人作品站到底需要什么?

我的方案

我的规划是:第一版选择 Astro。

这个选择不是因为 Astro 一定比 Next.js、Nuxt 更强,也不是因为它更流行。

更直接的原因是,我现在要做的不是一个复杂官网系统,而是个人博客上线后的轻量入口。

这一阶段真正重要的是博客:服务器、域名、备案、安全、Docker、Nginx、HTTPS、对象存储,这些工作都是为了把个人博客从 0 到 1 跑起来。

作品站不是替代博客,两者相辅相成。

它的任务更简单:把博客、公众号、GitHub、文章合集和项目实践整理出来,让第一次访问的人更快看懂我是谁、写过什么、做过什么。

所以这次选型,我最关心的不是框架能力上限,而是几个更实际的问题:够不够轻,内容组织是否自然,部署是否简单,后续维护成本是否低,会不会抢走博客这条主线。

做个人作品站时,Astro、Next.js、Nuxt 都能完成任务。

如果只是一个首页、几张项目卡片、文章入口和关于页面,甚至不用框架也能做。

一个静态 HTML 页面、一个现成模板、GitHub Pages,都能先跑起来。

所以“哪个框架能做”不是关键。真正要问的是:哪个框架最适合我当前阶段?

我不是做商业类官网,也不是做带登录、权限、接口和用户数据的应用,更不是想用作品站证明自己掌握某个前端全栈框架。

我已经有一个主工程:个人博客。

作品站只是博客与其他项目汇总之后的入口

如果一开始就把它当成完整 Web 应用,很容易走偏:页面还没写清楚,先研究框架;内容还没整理完,先设计后台、搜索、评论、主题切换。最后作品站变成新的长期维护负担。

需求列表

我重新梳理了一遍需求,发现它其实很克制。

一个清晰的首页

首页不是欢迎页,也不是一句简单自我介绍。

它要说明 Code of Duty 是什么,我在写什么,这个站和博客、公众号有什么关系。

访问者进来后,不应该还要猜我是做后端、前端、部署,还是单纯放简历。

一个文章入口

这个系列写到现在,内容已经不少,前面还有 Git 合集。

如果文章只按时间散落在公众号或博客里,读者很难知道从哪里开始。

作品站要做的是精选和导航,而不是复制一套博客系统。

一个项目入口

这里的项目不一定是传统产品。个人博客上线实践、服务器基础安全、Docker 加全局 Nginx 部署方案,都可以作为工程实践来展示。作品站要把真实做过的事情整理成别人能理解的能力证明。

部署简单

我已经有服务器、全局 Nginx 和 HTTPS。第一版作品站最好可以静态部署,不引入新的数据库、新后台或复杂运行时。

增强可维护性

以后我会新增代表文章、项目卡片、首页文案和系列入口。

如果每次改动都很麻烦,这个站很快就会停更。

内容最好能通过 Markdown、配置文件或内容集合来管理,而不是散落在页面代码里。

带着需求看框架

带着这些需求再看三个框架,取舍就清楚很多。

Next.js 很成熟,React 生态大,适合做完整应用

如果我要做登录系统、后台管理、用户数据、复杂接口、权限控制和动态内容,它会很合适。

但我的第一版作品站不需要这些。

如果现在选 Next.js,我很可能会把注意力放到服务端组件、数据获取、缓存、API 和部署模式上。

这些问题不错误,只是当前优先级不高。

Nuxt 也能做个人官网

如果主力技术栈是 Vue,或者已经有大量 Vue 组件积累,用 Nuxt 很自然。

它能做内容站、静态站,也能做 SSR 和完整应用。

但对我这次来说,作品站的核心不是展示 Vue 技术栈能力,而是整理已有内容。

Nuxt 能做,但不是最贴合当前目标的选择。

Astro 更接近我的需求

它面向内容驱动网站,适合博客、文档、作品集这类展示型场景;

默认尽量减少客户端 JavaScript;也提供 Content Collections 来组织 Markdown 内容。

对我的作品站来说,首页、文章入口、项目说明、关于页面,本质上都是内容展示。

需要交互的地方,比如移动端菜单、项目筛选、主题切换,可以后面再局部增强。

所以我最终决定用 Astro 做第一版个人作品站。

它在我的架构体系里承担的角色很明确:博客是内容主阵地,公众号负责持续触达,GitHub 提供代码和项目证据,Astro 作品站负责把这些入口轻量整理出来。

它不替代博客,也不替代公众号。

首页说明 Code of Duty 是什么;

文章页整理代表文章和系列;

项目页展示博客上线、服务器安全、Docker/Nginx 方案这些实践;

关于页解释我为什么做这个系列。

如果要做复杂后台、大量动态交互、用户系统或强状态应用,Astro 不一定是第一选择,

Next.js 或 Nuxt 可能更合适。

如果团队主要使用 Vue,Nuxt 也会更自然。

小结:

所以更准确的结论不是“个人官网就应该用 Astro”,而是:我的轻量个人作品站,当前阶段适合用 Astro。

如果你也在做个人官网,可以先问几个问题:

  1. 网站主要是内容展示,还是复杂应用?
  2. 你熟悉 React 还是 Vue?
  3. 第一版是否真的需要后台、登录、评论和搜索?
  4. 后续是否需要长期维护?

个人作品站第一版最重要的不是技术栈有多强,而是让别人看懂你是谁、写过什么、做过什么,以及从哪里继续了解你。

对我来说,Astro 的价值就在这里:它不会抢走博客主线,也不会让第一版陷入复杂应用开发。

它能用较低成本,把前面已经做过的博客、文章和项目整理成一个清晰入口。

下一篇,我会继续写更具体的问题:个人官网首页到底该写什么?框架只是工具,首页写什么内容,对读者要有吸引力,才决定别人第一眼能不能看懂你。


本文由 楸木 原创,转载请注明出处。

这篇文章暂未开放评论。

相关推荐

发现更多