主要变更: - 将所有CSS文件迁移到Less预处理器 - 配置Vite支持Less编译 - 使用Less变量、嵌套和父选择器优化样式代码 - 添加用户注册和登录功能 - 实现用户认证中间件和保护路由 - 新增Profile和Login页面 - 添加底部导航栏组件TabBarLayout - 更新CLAUDE.md为中文文档 技术改进: - Less变量统一管理主题色和间距 - CSS嵌套提高代码可读性和可维护性 - 模块化样式组织更清晰 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
130 lines
2.3 KiB
Markdown
130 lines
2.3 KiB
Markdown
# AnKao Web 项目
|
||
|
||
这是一个使用Go语言和Gin框架构建的Web应用项目。
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
AnKao/
|
||
├── main.go # 主程序入口
|
||
├── internal/ # 私有应用代码
|
||
│ ├── handlers/ # HTTP请求处理器
|
||
│ ├── middleware/ # 中间件
|
||
│ └── models/ # 数据模型
|
||
├── pkg/ # 公共库代码
|
||
│ └── config/ # 配置管理
|
||
├── go.mod # Go模块文件
|
||
└── README.md # 项目说明
|
||
```
|
||
|
||
## 快速开始
|
||
|
||
### 运行服务器
|
||
|
||
```bash
|
||
go run main.go
|
||
```
|
||
|
||
服务器将在 `http://localhost:8080` 启动
|
||
|
||
### API端点
|
||
|
||
#### 用户相关
|
||
- `POST /api/login` - 用户登录
|
||
|
||
#### 题目相关
|
||
- `GET /api/questions` - 获取题目列表
|
||
- `GET /api/questions/random` - 获取随机题目
|
||
- `GET /api/questions/:id` - 获取指定题目
|
||
- `POST /api/submit` - 提交答案
|
||
- `GET /api/statistics` - 获取统计数据
|
||
- `POST /api/reset` - 重置进度
|
||
|
||
#### 其他
|
||
- `GET /api/health` - 健康检查端点
|
||
|
||
## 开发
|
||
|
||
### 安装依赖
|
||
|
||
```bash
|
||
go mod tidy
|
||
```
|
||
|
||
### 构建
|
||
|
||
```bash
|
||
go build -o bin/server.exe main.go
|
||
```
|
||
|
||
### 运行编译后的程序
|
||
|
||
```bash
|
||
# Windows
|
||
.\bin\server.exe
|
||
|
||
# Linux/Mac
|
||
./bin/server
|
||
```
|
||
|
||
## 特性
|
||
|
||
- 基于 Gin 框架的高性能 HTTP 服务器
|
||
- 自定义日志中间件
|
||
- RESTful API 结构
|
||
- 健康检查端点
|
||
- 用户登录系统(基于JSON文件存储)
|
||
- 题目练习功能
|
||
- 答题统计功能
|
||
- React + TypeScript + Vite 前端
|
||
- Ant Design Mobile UI组件库
|
||
|
||
## 用户系统
|
||
|
||
用户数据存储在 [users.json](users.json) 文件中,格式如下:
|
||
|
||
```json
|
||
{
|
||
"用户名": {
|
||
"password": "密码",
|
||
"avatar": "头像URL",
|
||
"nickname": "昵称"
|
||
}
|
||
}
|
||
```
|
||
|
||
### 测试账号
|
||
|
||
- 用户名: `admin` / 密码: `123456`
|
||
- 用户名: `test` / 密码: `test123`
|
||
|
||
## 前端开发
|
||
|
||
### 安装依赖
|
||
```bash
|
||
cd web
|
||
npm install
|
||
```
|
||
|
||
### 运行开发服务器
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
### 构建
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
## 页面结构
|
||
|
||
- **首页(刷题页)** - 题目练习、随机题目、题目列表、筛选等功能
|
||
- **我的** - 用户信息、退出登录
|
||
- **登录页** - 用户登录
|
||
|
||
## 技术栈
|
||
|
||
- **Go** 1.25.1
|
||
- **Gin** v1.11.0 - Web 框架
|
||
- 清晰的项目架构,易于扩展
|