用途:为 TypeScript/JavaScript 应用接入 Better Auth 认证,采用“先规划、后实现”的两阶段流程,避免直接写代码导致实现与需求不符。
主要能力:扫描项目自动检测框架(Next.js、SvelteKit、Nuxt、Astro、Express、Hono、SolidStart 等)、数据库/ORM(Prisma、Drizzle、pg、mysql2、better-sqlite3、Mongoose、MongoDB)、已有认证库与包管理器;通过结构化提问确认项目类型、认证方式(邮箱密码、社交 OAuth、魔法链接、Passkey、手机号)、社交提供方、邮箱验证与邮件服务、插件功能(2FA、组织/团队、管理后台、API 令牌、密码重置)以及认证页面和 UI 风格,随后生成 markdown 实施计划并等待用户确认。实现阶段按新项目、从已有认证迁移、向现有项目添加认证三条路径执行。
使用方式:核心安装 npm install better-auth,按需安装 @better-auth/passkey、@better-auth/sso、@better-auth/stripe、@better-auth/scim、@better-auth/expo 等包。环境变量需设置 BETTER_AUTH_SECRET(32+ 字符,openssl rand -base64 32)、BETTER_AUTH_URL、DATABASE_URL 及 OAuth 密钥。服务器配置位于 lib/auth.ts;客户端按框架从 better-auth/react、/vue、/svelte、/solid、/client 导入。路由处理器按框架选择 toNextJsHandler、toNodeHandler、svelteKitHandler、solidStartHandler 或 auth.handler。数据库迁移中,内置 Kysely 用 npx @better-auth/cli@latest migrate,Prisma 先生成 schema 再执行迁移,Drizzle 生成后推送;添加插件后需重新运行 CLI 生成/迁移。
适用场景:需在 Next.js 等框架中快速搭建认证体系的项目,或从旧认证库渐进迁移。
限制:正文未提供具体收费、性能数据或效果保证;部分细节(如全部代码示例)需参考 better-auth.com/docs;迁移指南等外部资源未在资料中展开。