← 全部文章

建站手记:这个博客是怎么搭起来的

这个博客上线了,把搭建过程记录下来,给未来的自己(也许还有你)参考。

选型:为什么是 Astro

对比了一圈静态站方案:

方案优点顾虑
Astro默认零 JS、内容集合好用生态比 Next 小
Hugo构建极快模板语法劝退
Next.js生态最大对纯博客太重了

最终选 Astro:写 Markdown 文章、glob loader 一行配置就能加载,构建产物是纯 HTML,速度快得不像话。

目录结构

src/
├── content/blog/    # Markdown 文章
├── components/      # 组件(甚至美西螈也是组件)
├── layouts/         # 页面骨架
└── pages/           # 路由

最得意的决定:吉祥物美西螈是一个参数化的 SVG 组件,用字符矩阵定义像素画,组件里合并同色横段再渲染成 <rect>。想改配色只动一个对象。

三套主题

用 CSS 变量 + data-theme 属性做了三套主题:奶油粉、像素紫、洞窟深。切换按钮写在布局里,localStorage 记住选择,首帧前有段内联脚本恢复主题防止闪烁。

一点感受

静态站的快乐在于:构建完的东西就是全部,没有运行时惊喜。