2.6 KiB
2.6 KiB
1. 目录重组
- 1.1 创建
apps/和packages/顶层目录结构 - 1.2 将
backend/移动至apps/server/(含 Dockerfile、nest-cli.json 等全部文件) - 1.3 将
frontend/移动至apps/admin/(含 Dockerfile、nginx.conf、index.html 等全部文件) - 1.4 创建
packages/typescript-config/,提供base.json、nestjs.json、react-vite.json三个预设 - 1.5 清理旧路径:删除根目录残留的
backend/、frontend/引用
2. 根配置
- 2.1 更新根
package.json:添加workspaces字段,统一根脚本(dev、build、lint、format、test、typecheck) - 2.2 创建
turbo.json,配置 build/dev/lint/test/format/typecheck 流水线与缓存策略 - 2.3 更新
.gitignore,适配新的apps/和packages/路径 - 2.4 删除根目录现有
node_modules/和package-lock.json,重新npm install
3. 工具链迁移(oxlint + oxfmt)
- 3.1 安装 oxfmt,创建根目录
.oxfmtrc.json(映射现有.prettierrc配置:singleQuote、trailingComma) - 3.2 安装 oxlint,创建根目录
oxlint.config.ts,配置 TypeScript + React 规则覆盖 - 3.3 移除
apps/admin/中 ESLint 依赖和配置文件,将 lint 脚本改为 oxlint - 3.4 移除
apps/server/中 Prettier 相关依赖(eslint-plugin-prettier、eslint-config-prettier),更新 ESLint 配置 - 3.5 删除
apps/server/.prettierrc,前端 ESLint 配置由根 oxlint 统一管理
4. TypeScript 配置更新
- 4.1 更新
apps/server/tsconfig.json,继承@gongxue/typescript-config/nestjs.json - 4.2 更新
apps/admin/tsconfig.json,继承@gongxue/typescript-config/react-vite.json - 4.3 更新
apps/server/package.json的name字段为@gongxue/server - 4.4 更新
apps/admin/package.json的name字段为@gongxue/admin
5. Docker 适配
- 5.1 更新
docker-compose.yml:backend 服务build.context改为./apps/server,frontend 服务build.context改为./apps/admin - 5.2 验证
docker compose build全部成功 - 5.3 验证
docker compose up所有服务正常启动
6. 验证
- 6.1 验证
npm install(根目录)所有 workspace 依赖安装正确 - 6.2 验证
npm run build根目录构建全部通过 - 6.3 验证
npm run dev并行启动 server(:3003)和 admin(:3002),admin API 代理正常工作 - 6.4 验证
npm run lint全部通过(server ESLint + admin oxlint) - 6.5 验证
npm run formatoxfmt 格式化检查通过 - 6.6 验证
npm run test --workspace=apps/server后端测试通过