边缘手记
用 SvelteKit 做页面、Hono 做 API,部署在 EdgeOne 边缘节点的博客站点。
- sveltekit
- hono
- edgeone
这个站点本身就是一个项目:文章全部在构建期编译成静态 HTML 交给 CDN,只有 /api/* 会真正唤醒边缘函数。
整体思路是把能在构建期做完的事全部前置——Markdown 解析、代码高亮、目录提取、搜索结果索引,全部发生在 vite build 期间。运行时只剩下纯静态文件和一个极小的函数包。
技术上值得记几笔:
- 官方
@edgeone/sveltekit适配器生成的路由规则把函数限定在^/api(/.*)?,所以静态页面无论多少访问量都不会触发函数计费 - Shiki 采用两趟渲染:先同步解析 Markdown 留下占位符,再批量替换成高亮结果,避开 marked
async: true不 await 的坑 - 工具链锁在 Vite 6,因为 EdgeOne 构建镜像提供的 Node 最高只有 22.11.0
技术栈
SvelteKit 2 · Svelte 5 Runes · Hono 4 · Tailwind CSS v4 · Shiki 4 · EdgeOne Pages