chore: initialize monorepo tooling

This commit is contained in:
2026-09-18 15:00:48 +08:00
parent e28140a0b3
commit 55b2b091c2
42 changed files with 1858 additions and 18 deletions

View File

@@ -6,17 +6,17 @@
## 2. 技术选型
| 层 | 选型 | 目的 |
|---|---|---|
| Monorepo | pnpm workspace + Turborepo | 统一脚本、缓存构建、共享包 |
| 小程序 | 原生微信小程序 + TypeScript | 直接使用微信能力,减少跨端框架层 |
| 管理后台 | Next.js + TypeScript | 表单、列表、图片管理和路由生态成熟 |
| API | NestJS + TypeScript | 模块化、依赖注入、权限和校验边界清晰 |
| 数据库 | PostgreSQL | 适合预约、服务、反馈之间的关系 |
| ORM | Prisma | 类型安全、迁移和 schema 管理清晰 |
| 文件存储 | S3 兼容对象存储 | 图片不进入数据库,便于扩容和 CDN |
| 校验 | Zod 或 class-validator统一一种 | API 与前端共享约束 |
| 部署 | Docker Compose 起步,后续迁移托管服务 | 本地与生产环境差异小 |
| 层 | 选型 | 目的 |
| -------- | ------------------------------------- | ------------------------------------ |
| Monorepo | pnpm workspace + Turborepo | 统一脚本、缓存构建、共享包 |
| 小程序 | 原生微信小程序 + TypeScript | 直接使用微信能力,减少跨端框架层 |
| 管理后台 | Next.js + TypeScript | 表单、列表、图片管理和路由生态成熟 |
| API | NestJS + TypeScript | 模块化、依赖注入、权限和校验边界清晰 |
| 数据库 | PostgreSQL | 适合预约、服务、反馈之间的关系 |
| ORM | Prisma | 类型安全、迁移和 schema 管理清晰 |
| 文件存储 | S3 兼容对象存储 | 图片不进入数据库,便于扩容和 CDN |
| 校验 | Zod 或 class-validator统一一种 | API 与前端共享约束 |
| 部署 | Docker Compose 起步,后续迁移托管服务 | 本地与生产环境差异小 |
## 3. 仓库结构