基于 tinymind 打造个人博客
December 20, 2025
介绍
Tinymind 是一个生成博客的工具,将该项目部署到 Vercel 之后,访问对应的域名,授权你的 Github 账号,就可以用它来写你的个人博客和短想法,每条新日记都会立刻同步到你 Github 一个名为"tinymind-blog"的 repo 里。
这是一个开源产品、没有服务器,只授权公开 repo 的写权限,不会读取 private repo ,只要 Github 不倒闭,你的日记数据就不会丢失。
原理
- 用 Github API 在你的目录下创建一个"tinymind-blog" repo
- 你的每次提交(blog/thoughts),都会进行一次 commit ,数据被提交到这个 repo 。
- 读取最新的 blog 和 thoughts 数据,然后渲染在网页上。
部署
首先 fork Tinymind 到你的帐号,
- 准备仓库:先 fork 到你账号;确认分支(默认 main)包含最新代码。
- 创建 GitHub OAuth App:Homepage 填你的站点(先用临时 Vercel 预览域名也行),Callback 填 https://<你的域名>/api/auth/callback/github。拿到 Client ID/Secret。
- 在 Vercel 创建项目:Import Git 仓库(选择你的 fork),Root 目录保持
./,Build Command 默认npm run build,Install Command 默认npm install,Output/.next(这几个理论上都不用修改,默认即可)。 - 配置环境变量(Project Settings → Environment Variables,Production/Preview/Development 都加):
- GITHUB_ID / GITHUB_SECRET:刚才的 OAuth App 值
- NEXTAUTH_URL:生产环境填 https://<你的域名>,预览自动域名可用 https://<vercel-preview-url>(或者留空也行但最好明确)
- NEXTAUTH_SECRET:openssl rand -hex 32 生成的随机字符串
- NEXT_PUBLIC_BASE_URL:https://<你的域名>(供前端 canonical/分享使用)
- 绑定自定义域名:在 Vercel Domain 设置添加你的域名,DNS 做 CNAME/A 指向 Vercel;如果需要 www→根域跳转,可在 next.config.mjs 里更新 redirect 规则为你的域名;app/sitemap.ts 和 public/robots.txt 的 baseUrl/
- Sitemap 也改成你的域名。