欢迎来到这个日志。第一篇文章同时也是文档:你现在读到的一切,都是从一个存放在网站 git 仓库里的 .mdx 文件渲染出来的。
技术栈
整个网站底层刻意选得很"无聊":
- Next.js 14(App Router)—— 主页、这个博客、还有
~/tools,都只是普通路由 - MDX —— 文章是放在
content/posts/里的 Markdown 文件,用gray-matter解析 - shiki —— 代码高亮,配了一个定制的终端绿主题
- Vercel ——
git push之后大约 30 秒就能上线
没有 CMS,没有数据库。发一篇新文章就是:
git add content/posts/new-post.mdx
git commit -m "Post: something worth reading"
git push # 剩下的交给 Vercel为什么用 MDX
纯 Markdown 已经能覆盖 95% 的写作场景,但 MDX 的好处是文章里能嵌入真正的 React 组件——在需要的时候放个交互演示、自定义的提示框,甚至是主页上那只像素宠物。
export function Greeting({ name }: { name: string }) {
const hour = new Date().getHours()
const salute = hour < 7 ? 'zzz...' : `hello, ${name}`
return <span className="glow">{salute}</span>
}这个博客的原则是:如果一张图或者一个演示比文字讲得更清楚,那就把演示直接做进文章里。
接下来
~/tools会慢慢长成一堆小工具的集合——第一个已经上线的是学术论文修改技能- RSS 订阅、标签筛选,也许还有搜索——等文章多到真的需要的时候再加
就这样。exit 0。