# 基础规范

## 项目结构

```
src/
├── client/       # 前端代码 (React + Vite)
├── server/       # 后端代码 (Hono + TypeORM)
│   ├── api/      # API路由
│   ├── migrations/ # 数据库迁移脚本
│   ├── modules/  # 业务模块
│   └── middleware/ # 中间件
```

#### 小程序 (Mini)
```
mini/
├── config/       # 配置文件
├── src/          # 源代码
│   ├── pages/    # 页面组件
│   ├── utils/    # 工具函数
│   └── assets/   # 静态资源
└── types/        # 类型定义
```


## 技术栈

### 前端

#### 管理后台 (Admin) shadcn-ui
- **React 19** - 前端框架
- **TypeScript** (严格模式) - 类型系统
- **Vite 7** - 构建工具
- **React Router 7** - 路由管理
- **Ant Design 5** - UI组件库
- **Tailwind CSS 4** - 样式框架
- **React Query (TanStack) 5** - 数据获取和缓存
- **React Hook Form 7** - 表单处理
- **Lucide React** - 图标库
- **Heroicons** - 图标库
- **React Toastify** - 消息通知
+ @hookform/resolvers 5.2.1
+ zod 4.0.14

#### Web端 (Home) shadcn-ui
- **React 19** - 前端框架
- **TypeScript** (严格模式) - 类型系统
- **Vite 7** - 构建工具
- **React Router 7** - 路由管理
- **Tailwind CSS 4** - 样式框架 (原生CSS，不使用Ant Design)
- **React Query (TanStack) 5** - 数据获取和缓存
- **React Hook Form 7** - 表单处理
- **Lucide React** - 图标库
- **Heroicons** - 图标库
- **React Toastify** - 消息通知
+ @hookform/resolvers 5.2.1
+ zod 4.0.14

#### 小程序 (Mini)
- **Taro 4** - 跨端框架
- **React 18** - 前端框架
- **TypeScript** (严格模式) - 类型系统
- **Tailwind CSS 4** - 样式框架
- **@egoist/tailwindcss-icons** - 图标样式
- **clsx** - class样式
- **React Query (TanStack) 5** - 数据获取和缓存
+ @hookform/resolvers 5.2.1
- **React Hook Form 7** - 表单处理
+ zod 4.0.14

### 后端
- **Hono 4** - Web框架
- **TypeORM** - ORM框架 (MySQL)
- **MySQL 2** - 数据库驱动
- **Redis (ioredis)** - 缓存和会话管理
- **bcrypt** - 密码加密
- **jsonwebtoken** - JWT认证
- **OpenAI SDK** - AI集成
- **MinIO** - 对象存储
- **compression** - 压缩中间件

### 工具链
- **Node.js** - 运行时环境
- **ESM模块** - ECMAScript模块系统
- **dotenv** - 环境变量管理
- **debug** - 调试日志
- **uuid** - ID生成
- **dayjs** - 日期处理
- **axios** - HTTP客户端

### 数据可视化
- **Ant Design Plots** - 图表库
- **Three.js** - 3D可视化

### 开发工具
- **TypeScript** - 类型检查
- **Tailwind CSS** - 原子化CSS
- **Vite插件** - 开发服务器和热更新
- **SWC** - 快速编译
- **Cross-env** - 跨平台环境变量