企业级 SaaS 基座框架
- 🏢 多租户架构 - 基于 RLS 的强制数据隔离
- 🔐 RBAC 权限 - 灵活的角色-权限模型
- 🛡️ 安全优先 - 企业级安全实践
- 📊 审计日志 - 不可篡改的操作记录
- 🚀 双模式支持 - Hono 独立部署 + Next.js App Router
- 📦 开箱即用 - CRUD 生成、OpenAPI、Admin UI
| 包名 | 版本 | 描述 |
|---|---|---|
| @truss/core | 后端核心运行时 | |
| @truss/types | 共享类型定义 | |
| @truss/config | 共享配置 | |
| @truss/auth | 开发中 | 认证模块 |
| @truss/admin-ui | 开发中 | 管理后台 UI |
| @truss/billing | 规划中 | 计费订阅 |
| @truss/cli | 规划中 | 脚手架工具 |
# 创建新项目
npx create-truss-app my-saas-app
# 或手动安装
pnpm add @truss/core @truss/types详细文档请访问:https://truss.dev/docs
# 安装依赖
pnpm install
# 开发模式
pnpm dev
# 构建
pnpm build
# 测试
pnpm test
# 代码检查
pnpm lint欢迎贡献!请阅读 贡献指南。
---
### `CONTRIBUTING.md`
```markdown
# 贡献指南
感谢你对 Truss 的关注!我们欢迎所有形式的贡献。
## 开发环境设置
### 前置要求
- Node.js >= 18.0.0
- pnpm >= 9.0.0
- Git
### 本地开发
```bash
# 克隆仓库
git clone https://github.com/your-org/truss.git
cd truss
# 安装依赖
pnpm install
# 启动开发模式
pnpm dev
main- 稳定版本develop- 开发分支feature/*- 功能分支fix/*- 修复分支docs/*- 文档分支
我们使用 Conventional Commits 规范:
<type>(<scope>): <description>
[optional body]
[optional footer(s)]
feat: 新功能fix: Bug 修复docs: 文档更新style: 代码格式(不影响功能)refactor: 重构test: 测试相关chore: 构建/工具相关
feat(core): add permission caching support
- Add rbac_version based cache invalidation
- Add configurable cache TTL
- Add clearPermissionCache() helper
Closes #123
我们使用 Changesets 管理版本和发布。
# 添加变更记录
pnpm changeset
# 更新版本
pnpm version-packages
# 发布
pnpm release- 使用 TypeScript strict 模式
- 禁止
any类型 - 所有公开 API 必须有 JSDoc 注释
- 测试覆盖率要求 > 80%
- 使用 GitHub Issues 报告 Bug
- 使用 GitHub Discussions 讨论功能建议
再次感谢你的贡献!