Cloudflare 全栈 SSR 搭建
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @kunlungrowth/tanstack-start。
技能介绍
要解决的具体问题
在 Cloudflare Workers 上构建生产级 SSR 全栈应用时,开发者常面临三个痛点:一是 TanStack Start、Vite、Wrangler、Drizzle 和 better-auth 的多层配置容易出错,比如 vite.config.ts 中 Cloudflare 插件必须放在首位,否则服务入口无法正确识别;二是传统模板克隆或脚手架命令会预设项目结构,难以满足从零生成、逐文件定制的需求;三是部署前需要手动串联数据库迁移、鉴权回调、生产 URL 更新等多个环节,稍有疏漏就会导致构建失败或运行时错误。
技能如何工作
该技能以「全栈生成工程师」角色运行,分五步完成应用搭建:
- 初始化项目:创建目录并生成
vite.config.ts(Cloudflare 插件优先,依次叠加 Tailwind、TanStack Start、React 插件)、wrangler.jsonc(指定 Nitro 服务入口@tanstack/react-start/server-entry,配置nodejs_compat与 D1 数据库迁移目录)、tsconfig.json(ES2022 目标、路径别名、Workers 类型)等核心配置文件,同时用openssl生成BETTER_AUTH_SECRET写入.dev.vars。 - 生成源码:按文件树逐文件输出应用代码,包括根布局
__root.tsx、鉴权重定向路由index.tsx、登录注册页、鉴权守卫布局_authed.tsx及其下的仪表盘和条目页、better-auth 捕获端点api/auth/$、shadcn/ui 组件、数据库 schema 与服务函数等。 - 配置鉴权与迁移:在
lib/auth.server.ts中集成 Google OAuth 和邮箱密码鉴权,在src/db/schema.ts中定义 D1 表结构,生成并应用本地和远程数据库迁移。 - 本地验证与部署:通过
pnpm dev验证开发环境,pnpm build && wrangler deploy部署到生产环境,最后更新 Google OAuth 回调地址和BETTER_AUTH_URL为生产 URL。
适用边界与注意点
- 不适用于想直接拉取「电池全配」模板的场景,技能逐文件生成代码,部署前需自行跑通所有流程。
- 需要明确项目名(kebab-case)、鉴权方式(Google OAuth / 邮箱密码 / 两者)、Cloudflare 账户等核心信息,缺少必填项时技能会分步索要。
- 生成的
routeTree.gen.ts需由 TanStack Start 自动生成,开发者需确保构建时该文件存在。 - 若改用 Hono 路由,可将输出的
TanStackArtifact交给下游技能处理,但需注意本技能不直接生成 Hono 路由代码。
使用场景
- 要在 Cloudflare Workers 上从零搭建带 SSR 的 TanStack Start 全栈应用,需要逐文件生成路由与服务函数
- 用户提出搭一个带 Google 登录的 SSR 仪表盘,需要一并配置 D1 数据库与 Drizzle 迁移
- 项目要部署到 Cloudflare,需要正确配置 wrangler.jsonc 中 Nitro 服务入口与 d1_databases
- 应用需要 better-auth 的 Google OAuth 与邮箱密码登录,并生成鉴权守卫布局和迁移文件
适合人员
- 全栈工程师,想跳过模板克隆,从零生成 TanStack Start + Cloudflare Workers 的 SSR 应用代码
- 独立开发者,要在边缘部署带登录与数据库的仪表盘,希望技能生成鉴权与迁移代码
- 熟悉 React 19 的前端开发者,准备迁移到文件路由与服务函数架构,需要完整的文件树输出
- 需要在 Cloudflare 上快速验证 SSR 方案的技术团队,希望技能补齐 Vite 与 Wrangler 的多层配置细节