使用的技术
- React:用于构建用户界面的 JavaScript 库
- TypeScript:JavaScript 的有类型超集
- pnpm:快速、节省磁盘空间的包管理器
- tailwindcss:原子化 CSS 框架
- Zustand:客户端状态管理
- Tanstack Query:数据获取和缓存库
- Tanstack Router:类型安全路由
开发工具
- turborepo:基于Rust的monorepo方案
- biome:Web 项目开发的一体化工具链
- vitest:由 Vite 提供支持的下一代测试框架
- kubb:OpenAPI 到 TypeScript、React-Query、Zod、Faker.js、MSW 和 Axios
- CommitLint:用于常规提交消息的代码检查工具
- Husky:简化 Git 钩子的工具
- Lint-Staged:对预提交文件运行代码检查工具
- knip:在 JavaScript 和 TypeScript 项目中查找未使用的文件、依赖项和导出
- msw:mock方案
参考 apps/web/env 文件夹中的 .env.example 文件,并创建 .env.development.local 文件
该项目使用 pnpm 作为包管理器
npm install --global pnpm安装依赖
# node ^22.12.0,pnpm ^10.26.2
pnpm install启动主应用服务
pnpm dev:app主应用根据后端 swagger 生成前端 services 层代码
pnpm api如何 mock 设置 VITE_MOCK 为 true,apps/web/src/app/handlers.ts 中引用对应的 msw handle