IAM 项目指南
欢迎来到 IAM 项目指南!本指南将帮助你全面了解 IAM 项目的架构、开发流程和最佳实践。
IAM(Identity and Access Management)是一个现代化的身份和访问管理系统,采用 TypeScript 全栈开发,提供完整的用户认证和授权功能。
- 前端: Next.js 16 + React 19 + TailwindCSS + shadcn/ui
- 后端: Hono + tRPC + Node.js
- 数据库: PostgreSQL + Drizzle ORM
- 认证: Better-Auth
- 构建工具: Turborepo (Monorepo)
- 代码质量: Biome + Husky
graph TB
subgraph Client["客户端层"]
WebApp["Web 应用<br/>(Next.js)"]
Docs["文档站点<br/>(Astro)"]
end
subgraph Server["服务器层"]
HonoServer["Hono 服务器<br/>(apps/server)"]
TRPC["tRPC API"]
AuthHandler["Better-Auth<br/>认证处理器"]
end
subgraph Packages["共享包层"]
APIPackage["@IAM/api<br/>业务逻辑"]
AuthPackage["@IAM/auth<br/>认证配置"]
DBPackage["@IAM/db<br/>数据库架构"]
EnvPackage["@IAM/env<br/>环境变量"]
end
subgraph Database["数据层"]
PostgreSQL["PostgreSQL<br/>数据库"]
end
WebApp -->|HTTP/HTTPS| HonoServer
Docs -->|静态站点| Client
HonoServer --> TRPC
HonoServer --> AuthHandler
TRPC --> APIPackage
AuthHandler --> AuthPackage
APIPackage --> DBPackage
APIPackage --> AuthPackage
APIPackage --> EnvPackage
AuthPackage --> DBPackage
DBPackage --> PostgreSQL
- 开发工作流 - 代码结构、类型安全和调试技巧
- 认证系统 - Better-Auth 配置和使用
- API 开发 - tRPC 路由创建和调用,REST 文件上传接口
- 数据库管理 - Drizzle ORM 使用和查询
- 部署指南 - Vercel 部署配置和优化
- 考试系统 OIDC 接入指南 - 第三方应用接入 IAM 的完整 SSO 实操流程
- OIDC 排障报告 - Better Auth OIDC Provider 接入中的完整问题分析与修复过程
- 常见任务 - 故障排除和性能优化
如果遇到问题:
- 检查相关指南文档
- 查看 GitHub Issues
- 联系开发团队