Skip to content

hexuntao/truss

Repository files navigation

Truss

Truss Logo

企业级 SaaS 基座框架

CI Status npm version license


✨ 特性

  • 🏢 多租户架构 - 基于 RLS 的强制数据隔离
  • 🔐 RBAC 权限 - 灵活的角色-权限模型
  • 🛡️ 安全优先 - 企业级安全实践
  • 📊 审计日志 - 不可篡改的操作记录
  • 🚀 双模式支持 - Hono 独立部署 + Next.js App Router
  • 📦 开箱即用 - CRUD 生成、OpenAPI、Admin UI

📦 包列表

包名 版本 描述
@truss/core npm 后端核心运行时
@truss/types npm 共享类型定义
@truss/config npm 共享配置
@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

🤝 贡献

欢迎贡献!请阅读 贡献指南

📄 许可

MIT


---

### `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)]

Type

  • 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 讨论功能建议

再次感谢你的贡献!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors