# 小说 **Repository Path**: occ/novel ## Basic Information - **Project Name**: 小说 - **Description**: 小说PC+H5 GO+vue3 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-30 - **Last Updated**: 2026-07-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小说阅读平台(xiaoshuo) 一个完整的小说阅读平台,包含后端 API、H5 移动端站点、PC Web 浏览器版、Admin 管理后台四个子项目。 技术栈:Go + Hertz + GORM + MySQL(后端)、Nuxt 3 + Vant 4(H5)、Vue 3 + Vite(PC Web)、Vue 3 + Element Plus(管理后台)。 ## 目录结构 ``` xiaoshhuo/ ├── docs/ # 架构文档 + 数据库 SQL │ ├── architecture.md # 架构设计文档 │ └── xiaoshuo.sql # 数据库导出文件 ├── server/ # 后端服务(Go + Hertz) ├── frontend/ # H5 移动端(Nuxt 3) ├── pc/ # PC Web 版(Vue 3 + Vite) └── web/ # 管理后台(Vue 3 + Element Plus) ``` ## 环境要求 - Go 1.21+ - Node.js 18+ - MySQL 8.0+ - pnpm 或 npm ## 一、数据库初始化 1. 创建数据库(如使用本仓库默认连接则可跳过): ```sql CREATE DATABASE xiaoshuo DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 2. 导入 `docs/xiaoshuo.sql`: ```bash mysql -h 47.97.42.179 -P 3306 -u root -p xiaoshuo < docs/xiaoshuo.sql ``` > 默认数据已包含管理员账号:`admin / admin123` ## 二、后端服务(server) 技术栈:Go + Hertz + GORM + JWT + MySQL ### 1. 修改配置 编辑 [server/configs/config.yaml](server/configs/config.yaml),按需修改数据库、JWT 等配置: ```yaml server: port: 8080 mode: debug mysql: host: 47.97.42.179 port: 3306 username: root password: 8A35Nn3BkrCpny65 database: xiaoshuo charset: utf8mb4 jwt: secret: xiaoshuo-secret-key-2026 expire_hours: 72 ``` ### 2. 安装依赖并启动 ```bash cd server go mod download go run cmd/api/main.go ``` 启动后访问:http://localhost:8080 - 公开 API:`/api/v1/*` - 管理 API:`/api/v1/admin/*`(需 JWT 鉴权,默认账号 `admin / admin123`) ## 三、H5 移动端(frontend) 技术栈:Nuxt 3 + Vant 4 + Pinia + Axios ```bash cd frontend npm install npm run dev ``` 启动后访问:http://localhost:3000 API 代理已配置到后端 `http://localhost:8080`,详见 [frontend/nuxt.config.ts](frontend/nuxt.config.ts)。 ## 四、PC Web 版(pc) 技术栈:Vue 3 + Vite + Vue Router + Pinia + Axios(模拟起点风格) ```bash cd pc npm install npm run dev ``` 启动后访问:http://localhost:3001 API 代理已配置到后端 `http://localhost:8080`,详见 [pc/vite.config.ts](pc/vite.config.ts)。 ## 五、Admin 管理后台(web) 技术栈:Vue 3 + Vite + Element Plus + Pinia + Axios ```bash cd web npm install npm run dev ``` 启动后访问:http://localhost:8081 - 默认账号:`admin / admin123` - 登录后所有 `/api/v1/admin/*` 接口会自动携带 JWT Token ## 端口汇总 | 服务 | 端口 | 说明 | | --------------- | ----- | -------------------------- | | server(后端) | 8080 | Go + Hertz REST API | | frontend(H5) | 3000 | Nuxt 3 移动端 | | pc(PC Web) | 3001 | Vue 3 PC 浏览器版 | | web(管理后台) | 8081 | Vue 3 + Element Plus 后台 | ## 常用命令 ```bash # 后端 cd server && go run cmd/api/main.go # 开发模式 cd server && go build -o cmd/api/api.exe cmd/api/main.go # 编译 # 前端(三端通用) npm install # 安装依赖 npm run dev # 开发模式 npm run build # 生产构建 npm run preview # 预览生产构建 ``` ## 数据库表说明 所有表统一使用 `xs_` 前缀,主要包括: | 表名 | 说明 | | ----------------- | ------------ | | xs_admins | 管理员 | | xs_users | 用户 | | xs_books | 小说 | | xs_categories | 分类(自关联)| | xs_chapters | 章节 | | xs_shelves | 书架 | | xs_reading_records| 阅读记录 | | xs_notices | 公告 | | xs_operation_logs | 操作日志 | 详细字段请参考 [docs/architecture.md](docs/architecture.md) 与 [docs/xiaoshuo.sql](docs/xiaoshuo.sql)。 ![h5.png](img%2Fh5.png) ![admin.png](img%2Fadmin.png) ![noval.png](img%2Fnoval.png) ![pc.png](img%2Fpc.png)