概览

面向 Cloudflare Workers 的功能完备 TanStack Start SaaS 起步模板。

TanStack 模板是一个基于 TanStack Start、TanStack Router、React 19 与 Vite 的功能完备 SaaS 起步模板。它部署到 Cloudflare Workers,并包含 D1 数据库、R2 对象存储、身份认证、支付、邮件、内容、国际化与 AI 示例。

认证、数据库、存储、邮件与内容/国际化均已端到端打通;示例与 UI 起步页面仍需补充你的产品策略、限制、真实数据与生产加固,下方的 功能状态表会逐项说明。

运行时是架构的一部分:DBUPLOADS 是按请求读取的 Cloudflare 绑定,数据库使用兼容 SQLite 的 D1,生产环境通过 wrangler deploy 发布,而不是运行 Node 服务器或容器。

技术栈

领域技术
框架TanStack Start + TanStack Router,由 Vite 构建
UI 运行时React 19 + TypeScript
身份认证Better Auth(邮箱/密码、GitHub/Google OAuth、管理员插件)
数据库Cloudflare D1(SQLite)+ Drizzle ORM
存储Cloudflare R2
支付Creem
邮件Resend + React Email
国际化i18next + react-i18next
文档与内容Fumadocs MDX、博客与法律内容集合
AI 对话Vercel AI SDK + OpenAI
AI 媒体Replicate 图片、视频与音频任务
样式Tailwind CSS v4 + shadcn/ui
工具链Biome、Vitest、pnpm、Wrangler

功能状态

本文档统一使用以下标签:

  • 已集成(Integrated) —— 模板中已端到端连接。
  • 示例(Example) —— 可工作的参考实现,仍需产品专属策略、限制或数据。
  • UI 起步(UI starter) —— 使用模拟/静态数据或仍有未完成操作的设计页面。
领域状态范围
身份认证已集成邮箱/密码、强制验证、密码重置、GitHub/Google OAuth、会话、账号关联和管理员插件
数据库已集成D1/SQLite、Drizzle 认证与支付 schema,以及已提交的 SQL 迁移
支付示例需登录的 Creem 结账、订单查询、签名校验与部分 Webhook 事件
邮件/联系已集成使用 Resend 发送验证、重置密码与联系消息
NewsletterUI 起步只有邮件模板,没有订阅路由或持久化
AI示例OpenAI 流式对话与 Replicate 媒体任务;未包含生产配额和限流
内容与国际化已集成Fumadocs 文档、博客/法律内容,以及中英文 i18next 路由
Dashboard/管理UI 起步部分页面使用模拟/静态数据;路由守卫和认证 API 提供已连接的基础
存储已集成(策略为示例)登录后上传至持久化 R2 并由 Worker 返回;需增加产品限制与更强校验

应用界面

TanStack Router 使用无路径布局路由共享 UI,而不会在公开 URL 中增加段:

  • 营销(_marketing —— 首页、定价、博客、法律内容、联系、支付成功与 AI 页面。
  • 身份认证(auth —— 登录、注册、验证说明、忘记密码和重置密码。
  • Dashboard(_dashboard —— 受保护的仪表盘、账户/设置和管理员界面。
  • 内容(_docs —— Fumadocs 文档,以及博客与法律内容集合。
  • 服务路由(src/routes/api —— Better Auth、联系邮件、Creem、存储、用户/管理、对话和媒体 API。

可选的 {-$locale} 段包裹这些布局:英文 URL 不带前缀,中文使用 /zh

从这里开始

按主路径从本地 Worker 走到生产部署:

On this page