本文档记录了 D8D Starter 代码库的当前状态,包括技术债务、变通方案和实际使用模式。它作为 AI 代理进行增强开发时的参考文档。
全面记录整个系统架构
| 日期 | 版本 | 描述 | 作者 |
|---|---|---|---|
| 2024-09-14 | 1.0 | 初始现有系统分析 | Winston |
server.js - Node.js 服务器启动文件src/server/data-source.ts - 数据库配置src/server/api/ - API 路由处理src/server/modules/ - TypeORM 实体src/client/index.tsx - React 应用入口| 类别 | 技术 | 版本 | 备注 |
|---|---|---|---|
| 运行时 | Node.js | 20.18.3 | ES 模块 |
| 框架 | Hono | 4.8.5 | Web 框架 |
| 前端框架 | React | 19.1.0 | 最新版本 |
| 构建工具 | Vite | 7.0.0 | 开发服务器和构建工具 |
| 数据库 | MySQL | 8.0.36 | 通过 TypeORM |
| ORM | TypeORM | 0.3.25 | 数据库操作 |
| 样式 | Tailwind CSS | 4.1.11 | 原子化 CSS 框架 |
| 状态管理 | React Query | 5.83.0 | 服务端状态管理 |
| 认证 | JWT | 9.0.2 | JSON Web Token |
d8d-starter/
├── src/
│ ├── client/ # 前端 React 代码
│ │ ├── admin/ # 管理后台界面
│ │ ├── home/ # 用户主页界面
│ │ ├── components/ # 共享组件
│ │ ├── hooks/ # React Hooks
│ │ └── lib/ # 工具库
│ ├── server/ # 后端 Node.js 代码
│ │ ├── api/ # API 路由处理
│ │ │ ├── auth/ # 认证相关路由
│ │ │ ├── users/ # 用户管理路由
│ │ │ └── roles/ # 角色管理路由
│ │ ├── modules/ # 业务模块
│ │ ├── middleware/ # 中间件
│ │ ├── types/ # TypeScript 类型定义
│ │ └── utils/ # 工具函数
│ └── share/ # 前后端共享代码
├── dist/ # 构建输出目录
├── scripts/ # 构建和部署脚本
└── config/ # 配置文件
src/server/modules/users/ - 处理所有用户操作src/server/api/auth/ - JWT 认证实现src/server/data-source.ts - TypeORM 数据源配置src/server/api.ts - 主 API 路由配置src/client/admin/routes.tsx - React Router 配置src/server/modules/users/user.entity.tssrc/server/modules/users/role.entity.tssrc/share/types//ui 端点提供 Swagger UI/api/v1/ 前缀)server.js 中的模板处理逻辑较为复杂,需要简化.env 文件示例,环境变量管理需要改进any 类型,需要更严格的类型定义synchronize: true)| 服务 | 用途 | 集成类型 | 关键文件 |
|---|---|---|---|
| MySQL | 数据库 | TypeORM | src/server/data-source.ts |
| Redis | 缓存 | 未实现 | (计划中) |
| MinIO | 对象存储 | 未实现 | (计划中) |
docker-compose up 启动依赖服务npm run dev 启动开发服务器http://localhost:8080npm run dev (Vite 开发服务器)npm run build (分别构建客户端和服务端)npm start (Node.js 生产服务器)# 目前没有配置测试命令
npm run dev # 启动开发服务器
npm run build # 生产环境构建
npm start # 启动生产服务器
docker-compose up # 启动依赖服务
DEBUG=* 环境变量获取详细日志@/ 作为 src/ 的别名这个文档提供了 D8D Starter 项目的完整架构概览,包括当前的技术债务和需要注意的事项。随着项目的演进,这个文档应该定期更新以反映最新的系统状态。