博客的第一篇文章
1 分钟
博客正式开张。这篇文章用来测试正文的各类排版元素,也顺便记录一下建站时的技术选型。
为什么选 Astro
对比过 Hexo、Hugo 和 Next.js 之后,最终选了 Astro,理由有三:
- 内容优先:Markdown 写作,构建期生成纯静态 HTML,默认零客户端 JS
- 自由度高:设计系统完全自己掌控,不被主题的样式体系束缚
- 部署简单:静态产物往 Cloudflare Pages 上一丢就完事,国内可访问
技术栈一览
| 组件 | 选型 | 说明 |
|---|---|---|
| 框架 | Astro 7 | 静态站生成器 |
| 样式 | Tailwind CSS 4 | CSS-first 配置 |
| 动效 | motion + CSS | 弹簧物理交互 |
| 托管 | Cloudflare Pages | 免费额度充足 |
一段代码
// 草稿内容只在开发环境显示,生产构建时剔除
function pass(data: { draft?: boolean }) {
if (import.meta.env.DEV) return true;
return !data.draft;
}
极简的本质不是少,而是没有多余。
行内代码像这样:visibility: protected,写在 frontmatter 里就会要求访客输入密码。
接下来
- 把「关于」页的信息填完整
- 写一篇讲弹簧动画实现细节的文章
- 部署上线