fischerX/docs/architecture/design-decisions
fischer af4de6b86a feat: FischerX开发底座初始化提交
- Monorepo架构(pnpm + Turborepo)
- 前端:Next.js + TypeScript + Tailwind CSS + Shadcn UI
- 后端:NestJS + Prisma + PostgreSQL + Redis
- 核心模块:用户管理、认证授权、权限控制、文件存储
- 业务模块:支付系统、消息通知、内容管理
- 基础设施:Docker、K8s、Terraform、CI/CD
- 监控告警:Prometheus + Grafana + Loki + Jaeger
- CLI工具:@fischerx/cli
- 文档体系:9大类30+文档
2026-05-25 09:50:16 +08:00
..
0001-monorepo-architecture.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
0002-nextjs-framework.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
0003-nestjs-backend.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
0004-prisma-orm.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
0005-rbac-authorization.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
0006-multi-cloud-storage.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00
README.md feat: FischerX开发底座初始化提交 2026-05-25 09:50:16 +08:00

README.md

架构决策记录 (ADR)

本目录包含 FischerX 项目的架构决策记录。

ADR 列表

编号 标题 状态
0001 Monorepo 架构 接受
0002 Next.js 前端框架 接受
0003 NestJS 后端框架 接受
0004 Prisma ORM 接受
0005 RBAC 权限模型 接受
0006 多云对象存储抽象 接受

什么是 ADR

架构决策记录 (Architecture Decision Record) 是一种记录重要架构决策的方式,包括:

  • 决策的上下文
  • 做出的决策
  • 考虑过的备选方案
  • 决策的后果(正面和负面)

ADR 模板

每个 ADR 遵循以下结构:

# ADR-XXXX: 标题

| 状态 | 提议/接受/废弃/替代 |
|-----|---------------------|
| 创建日期 | YYYY-MM-DD |
| 作者 | 作者姓名 |

## 上下文

为什么需要做这个决策?背景是什么?

## 决策

我们决定做什么?

## 备选方案

考虑过哪些其他方案?

## 后果

这个决策的正面和负面影响是什么?

## 相关链接

相关的文档和资源。

如何贡献新的 ADR

  1. 复制 template.md (如果没有,请先创建) 为新文件
  2. 使用格式 XXXX-title.md 命名 (XXXX 是4位数字编号)
  3. 填写内容
  4. 创建 PR 进行审核

ADR 生命周期

  • 提议: 正在讨论中
  • 接受: 已决定采用
  • 废弃: 不再适用
  • 替代: 已被新的 ADR 替代