Better SaaS简介
Better SaaS 是一个基于 Next.js 15 和最新 Web 技术构建的现代化、生产就绪的 SaaS 应用程序模板。它提供了构建、部署和扩展下一个 SaaS 应用程序所需的一切,让您充满信心地开发产品。
为什么选择 Better SaaS?
- 🚀 生产就绪 - 采用企业级模式和最佳实践构建
- ⚡ 开发体验 - 出色的 TypeScript 支持和现代化工具
- 🔧 可扩展架构 - 设计为与您的业务一起成长
- 📦 全面功能 - 一个包中包含您需要的一切
- 🔄 积极开发 - 定期更新和改进
- 🌍 社区支持 - 不断增长的社区和全面的文档
🎯 核心功能
🔐 身份认证与授权
- 使用 Better Auth 的多提供商身份认证
- 邮箱/密码和社交登录(GitHub、Google)
- 具有管理员权限的基于角色的访问控制(RBAC)
- 数据库持久化的会话管理
- 密码重置和邮箱验证
- 安全的会话处理和令牌管理
💳 支付与计费系统
- 完整的 Stripe 集成和订阅管理
- 多种定价计划和计费周期(月付/年付)
- 实时支付事件的 Webhook 处理
- 带发票管理的计费仪表板
- 免费试用支持和订阅控制
- 支付方式管理和客户门户
📁 文件管理
- 云存储集成(AWS S3/Cloudflare R2)
- 带验证和处理的安全文件上传
- 图像处理和自动缩略图生成
- 文件访问控制和权限管理
- 支持多种文件类型和大小限制
- 拖拽式文件上传界面
🌍 国际化 (i18n)
- 使用 next-intl 的多语言支持
- 内置中英文翻译
- 本地化路由和内容管理
- 易于添加新语言和地区
- SEO 友好的本地化 URL
- 货币和日期格式化支持
📱 现代 UI/UX
- 使用 Tailwind CSS v4 的响应式设计
- 符合无障碍访问的 Radix UI 组件
- 带平滑过渡的深色/浅色主题支持
- 移动优先的触摸友好界面
- 现代设计模式和微交互
- 可自定义的设计系统
📖 文档系统
- 使用 Fumadocs 的内置文档系统
- 支持丰富内容和交互示例的 MDX 支持
- 全文搜索功能
- 代码高亮和实时示例
- 带交互式操作台的 API 文档
- 多语言文档支持
🔒 安全与性能
- 基于中间件认证的受保护路由
- 全面 TypeScript 覆盖的类型安全开发
- 使用 Next.js 15 App Router 的优化打包
- 安全最佳实践和漏洞防护
- 性能监控和优化
- CSRF 保护和安全头设置
🧪 全面测试
- 高覆盖率的完整测试套件
- 使用 Jest 和 React Testing Library 的单元测试
- API 端点和数据库操作的集成测试
- 用户工作流程的 Playwright 端到端测试
- 视觉回归测试和无障碍访问测试
- 自动化测试的 CI/CD 集成
👥 管理面板
- 带搜索、过滤和批量操作的用户管理
- 系统配置和功能开关
- 实时指标的分析仪表板
- 管理员文件管理界面
- 订阅管理和计费监督
- 审计日志和系统监控
🛠️ 技术栈
前端技术
- Next.js 15 - 带 App Router 和服务器组件的 React 框架
- React 18 - 具有并发功能的最新 React
- TypeScript - 全覆盖的类型安全 JavaScript
- Tailwind CSS v4 - 具有自定义设计系统的实用优先 CSS 框架
- Radix UI - 无障碍访问的组件原语
- Zustand - 轻量级状态管理
- SWR - 具有缓存和同步的数据获取
后端技术
- Next.js API Routes - 服务器端 API 端点和中间件
- Better Auth - 现代身份认证和授权
- Drizzle ORM - 具有迁移的类型安全数据库工具包
- PostgreSQL - 强大的关系型数据库
- Stripe - 支付处理和订阅管理
- Zod - 模式验证和类型推断
基础设施与工具
- Vercel - 具有边缘函数的部署平台
- Cloudflare R2 - 文件和媒体的对象存储
- GitHub Actions - CI/CD 流水线自动化
- Biome - 快速代码格式化和检查
- pnpm - 快速高效的包管理器
开发工具
- Jest - 具有覆盖率的单元测试框架
- Playwright - 端到端测试自动化
- Drizzle Studio - 数据库管理界面
📊 项目结构
better-saas/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── [locale]/ # 国际化路由
│ │ ├── api/ # API 端点和 webhooks
│ │ └── globals.css # 全局样式
│ ├── components/ # 可重用的 UI 组件
│ │ ├── ui/ # 基础 UI 组件 (Radix UI)
│ │ ├── blocks/ # 页面区块和布局
│ │ ├── auth/ # 身份认证组件
│ │ └── dashboard/ # 仪表板组件
│ ├── lib/ # 工具库和服务
│ │ ├── auth/ # 身份认证配置
│ │ ├── fumadocs/ # 文档系统
│ │ └── logger/ # 日志工具
│ ├── server/ # 服务器端代码
│ │ ├── actions/ # Server Actions
│ │ └── db/ # 数据库层 (Drizzle ORM)
│ ├── config/ # 配置文件
│ ├── content/ # 内容管理 (MDX)
│ ├── i18n/ # 国际化
│ ├── hooks/ # 自定义 React hooks
│ ├── payment/ # 支付集成
│ ├── store/ # 状态管理
│ └── types/ # TypeScript 定义
├── tests/ # 全面的测试套件
│ ├── unit/ # 单元测试
│ ├── integration/ # 集成测试
│ └── e2e/ # 端到端测试
├── docs/ # 文档
└── public/ # 静态资源
🎯 使用场景
Better SaaS 非常适合:
- SaaS 初创公司 - 使用所有基本功能快速启动您的 MVP
- 企业应用程序 - 构建具有企业级安全性的内部工具
- 电子商务平台 - 创建基于订阅的电子商务解决方案
- 内容管理 - 构建具有用户管理的内容平台
- 教育平台 - 创建学习管理系统
- 商业工具 - 开发生产力和业务管理工具
🤝 社区与支持
扫码添加作者微信,邀请你进入专属答疑微信群,获取配套的视频教程和实战项目代码。
