跳过重复的技术栈设置(Database、Auth、UI),立即开始编码
发布: (2026年1月14日 GMT+8 23:55)
4 min read
原文: Dev.to
Source: Dev.to
问题
上周我启动了一个新的 Next.js 项目。需要的常规技术栈:
- drizzle 用于数据库
- better‑auth 用于认证
- shadcn 用于 UI
- TanStack Query 用于数据获取
事情的经过如下:
- 安装 drizzle,创建 schema,配置客户端
- 安装 better‑auth,创建 user/session/account 表
- 将 better‑auth 接入 drizzle schema
- 安装 shadcn,设置
components.json - 配置主题提供者
- 配置 TanStack Query 并添加相应的提供者
- 调试 TypeScript 路径 20 分钟
- 发现忘记把 auth 表加入 schema
- 90 分钟后:终于可以工作了
我在四个月里已经做了 6 次完全相同的集成。相同的栈。相同的调试。相同的时间浪费。
我构建的解决方案
create-faster 能生成已经集成好所选技术栈的项目:
bunx create-faster
交互式模式
选择你的技术栈:
- 框架:Next.js、Expo、Hono、TanStack Start
- 数据库:Postgres、MySQL
- ORM:Drizzle、Prisma(自动生成 auth 表)
- UI:shadcn、nativewind、主题支持等
- 特性:Better Auth、TanStack Query/Form、MDX、PWA 等
- 包管理器:bun、pnpm、npm
非交互式模式
每次都使用相同的配置:
bunx create-faster myapp \
--app myapp:nextjs:shadcn,better-auth,tanstack-query \
--database postgres \
--orm drizzle \
--git --pm bun
多应用 Monorepo
Web + 移动共享同一个数据库:
bunx create-faster mysaas \
--app web:nextjs:shadcn,better-auth \
--app mobile:expo:nativewind \
--database postgres \
--orm drizzle \
--git --pm bun
自动创建 Turborepo。两个应用都使用共享的 db 包,auth 表已经在 drizzle schema 中。
实际生成的内容
不仅是文件——还有可直接使用的集成。
drizzle + better‑auth
- 在 drizzle schema 中的 User、session、account 表
- 已配置的数据库客户端
- 指向 drizzle 的 auth 配置
- 可直接使用的类型安全查询
shadcn + next‑themes
- 已安装 shadcn 并配置
components.json - 在应用布局中加入主题提供者
- 已准备好的暗模式切换组件
- 已配置的 Tailwind
TanStack Query + Next.js
- 已配置的 Query 客户端
- 在应用布局中加入 Provider
- 如选中则提供 Devtools
- 示例查询 Hook
对于 Monorepo
- 带有正确流水线的 Turborepo
- 所有应用共享的
db包 - 已配置的 TypeScript 路径
- 单一的安装命令
可复现性特性
生成后,会得到一条完整的命令用于重新创建相同项目:
create-faster mysaas \
--app web:nextjs:shadcn,better-auth \
--app mobile:expo:nativewind \
--database postgres \
--orm drizzle \
--git --pm bun
保存下来,之后再运行。每次都得到相同的集成栈。
为什么要构建它
我一直在重复构建相同的集成:
- 带有 better‑auth 表的 drizzle schema
- 带有主题提供者的 shadcn
- 已接入 Next.js 的 TanStack Query
- 用于 Web + 移动的 Turborepo
每次都要花约 90 分钟完成相同的工作,而且每次的细微差别会导致后期的 bug。
现在只需一条命令。每次都得到一致、可直接使用的技术栈。
接下来计划
当前支持
- 框架:Next.js、Expo、Hono、TanStack Start
- 数据库:Postgres、MySQL(配合 drizzle 或 Prisma)
- 常用模块:shadcn、better‑auth、TanStack Query/Form 等
- Monorepo:自动生成 Turborepo 用于多应用项目
路线图
- 更多框架(Remix、Astro)
- 更多集成(tRPC、i18n、Stripe)
- 模板示例(仪表盘、dApp、SaaS)
- 保存的预设
试一试
bunx create-faster
- GitHub:
- Docs:
- npm:
MIT 许可证。欢迎提交 PR。
讨论
哪些栈的集成让你感到厌烦?有什么功能可以让它更有用?