tech

这个博客是怎么搭起来的

记录 lindaren 博客用到的框架、选型理由,以及由 GPT 生成的配图。

这个博客本身很小,技术选型也尽量克制,没用什么复杂的东西。

为什么是 Astro

选 Astro 最直接的理由是它默认输出静态 HTML,没有运行时负担。博客是内容型站点,绝大多数页面不需要交互,与其为极少数需要 JS 的地方引入一整个前端框架,不如用 Astro 这种「按需注入脚本」的模型——只有需要的地方才加载 JS。

另外,内容集合(Content Collections)和 Markdown/MDX 的一等支持,让「写文章」回到最朴素的形式:一个 md 文件就是一篇。文章内容仍由 Git 管理,动态数据则交给独立服务处理。

用的框架

  1. Astro:负责路由、内容集合和静态生成。
  2. Tailwind CSS 4:样式方案,通过 @tailwindcss/vite 接入。
  3. MDX:文章既能写 Markdown,也能混入组件。
  4. Sitemap@astrojs/sitemap 自动生成站点地图。

持久化

博客使用 Cloudflare D1 保存需要长期保留的动态数据。它和静态文章内容分开,负责为网站提供轻量、可靠的持久化能力,同时保持整体架构简单。

需要说明的是,Cloudflare 的 Worker 和 D1 服务部署在境外。由于网络环境限制,部分用户只有使用代理工具(俗称“梯子”)才能正常访问阅读数统计接口。因此,网站主体可以正常浏览,但阅读数等数据统计功能目前并不算完全完善,统计结果可能缺失或无法及时更新。

配图

站里的图片几乎都由 GPT Image 2.0 生成,比如下面这两张就是:

首页工作台插画 博客插画

参考

AI 观察页那个旋转滚轮,实现参考这个 CodePen:mark_sottek 的旋转滚轮