跳过重复的技术栈设置(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。

讨论

哪些栈的集成让你感到厌烦?有什么功能可以让它更有用?

Back to Blog

相关文章

阅读更多 »

Rapg:基于 TUI 的密钥管理器

我们都有这种经历。你加入一个新项目,首先听到的就是:“在 Slack 的置顶消息里查找 .env 文件”。或者你有多个 .env …

技术是赋能者,而非救世主

为什么思考的清晰度比你使用的工具更重要。Technology 常被视为一种魔法开关——只要打开,它就能让一切改善。新的 software,...

踏入 agentic coding

使用 Copilot Agent 的经验 我主要使用 GitHub Copilot 进行 inline edits 和 PR reviews,让我的大脑完成大部分思考。最近我决定 t...