# go-learn-project **Repository Path**: qiaoyuning/go-learn-project ## Basic Information - **Project Name**: go-learn-project - **Description**: 用来学习go而做的demo项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-19 - **Last Updated**: 2026-04-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 根据项目代码结构分析,这是一个包含 Go 后端和 React 前端的全栈任务管理系统项目。让我基于代码结构信息生成 README。 # go-learn-project > 一个基于 Go + Gin + React 的任务管理系统前后端分离项目 ## 📋 项目简介 这是一个简洁高效的任务管理系统,采用前后端分离架构。后端使用 Go 语言结合 Gin 框架构建 RESTful API,前端使用 React + Vite 构建现代化单页应用。 ## 🛠️ 技术栈 ### 后端 - **Go 1.x** - 编程语言 - **Gin** - Web 框架 - **GORM / sqlx** - 数据库 ORM - **JWT** - 用户认证 ### 前端 - **React 18** - UI 框架 - **Vite** - 构建工具 - **React Router** - 路由管理 - **Context API** - 状态管理 ## 📁 项目结构 ``` go-learn-project/ ├── main.go # 后端入口 ├── config/ │ └── config.yaml # 配置文件 ├── common/ # 公共模块 │ ├── config.go # 配置管理 │ ├── db.go # 数据库连接 │ ├── jwt.go # JWT 认证 │ └── request.go # 响应封装 ├── controllers/ # 控制器层 │ ├── user.go # 用户相关 │ └── task.go # 任务相关 ├── models/ # 数据模型 │ ├── login.go # 用户模型 │ └── task.go # 任务模型 ├── repository/ # 数据访问层 │ ├── login.go # 用户数据操作 │ └── task.go # 任务数据操作 ├── middlewares/ # 中间件 │ └── auth.go # JWT 认证中间件 ├── routes/ # 路由配置 │ └── routes.go └── web-front/ # 前端应用 ├── src/ │ ├── api/ # API 请求 │ ├── context/ # 状态管理 │ ├── pages/ # 页面组件 │ └── main.jsx ├── index.html └── package.json ``` ## ✨ 功能特性 ### 用户模块 - 用户注册 - 用户登录 - JWT 身份认证 ### 任务模块 - 创建任务 - 查询任务 - 更新任务 - 删除任务 ## 🚀 快速开始 ### 后端启动 ```bash # 安装依赖 go mod tidy # 启动服务 go run main.go ``` ### 前端启动 ```bash cd web-front # 安装依赖 pnpm install # 启动开发服务器 pnpm dev ``` ## ⚙️ 配置说明 配置文件 `config/config.yaml` 包含以下配置项: ```yaml server: port: 8080 database: host: localhost port: 3306 user: root password: "" dbname: task_db jwt: secret: your-secret-key expire: 24h ``` ## 📡 API 接口 ### 用户接口 | 方法 | 路径 | 描述 | |------|------|------| | POST | /api/register | 用户注册 | | POST | /api/login | 用户登录 | ### 任务接口 (需要认证) | 方法 | 路径 | 描述 | |------|------|------| | GET | /api/task/:id | 获取任务 | | POST | /api/task | 创建任务 | | PUT | /api/task | 更新任务 | | DELETE | /api/task/:id | 删除任务 | ## 📝 数据模型 ### User (用户) | 字段 | 类型 | 描述 | |------|------|------| | ID | int | 用户ID | | Username | string | 用户名 | | Password | string | 密码 | ### Task (任务) | 字段 | 类型 | 描述 | |------|------|------| | ID | int | 任务ID | | Title | string | 任务标题 | | Content | string | 任务内容 | | UserID | int | 所属用户ID | ## 🔐 安全说明 - 用户密码建议使用 bcrypt 或其他加密方式进行哈希存储 - API 使用 JWT Token 进行身份认证 - 前端通过 Context API 管理登录状态 ## 📄 许可证 本项目仅供学习参考使用。