mirror of
https://github.com/ctwj/urldb.git
synced 2025-11-25 03:15:04 +08:00
update: readme.md
This commit is contained in:
323
README.md
323
README.md
@@ -1,75 +1,114 @@
|
||||
# 资源管理系统
|
||||
# 🚀 panResManage - 网盘资源管理系统
|
||||
|
||||
一个基于 Golang + Nuxt.js 的资源管理系统,参考网盘资源管理界面设计。
|
||||
<div align="center>
|
||||
|
||||
## 技术栈
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
### 后端
|
||||
- **Golang** - 主要编程语言
|
||||
- **Gin** - Web框架
|
||||
- **PostgreSQL** - 数据库
|
||||
- **lib/pq** - PostgreSQL驱动
|
||||
**一个现代化的网盘资源管理系统,支持多平台网盘资源统一管理和分享**
|
||||
|
||||
### 前端
|
||||
- **Nuxt.js 3** - Vue.js框架
|
||||
- **Vue 3** - 前端框架
|
||||
- **TypeScript** - 类型安全
|
||||
- **Tailwind CSS** - 样式框架
|
||||
🌐 [在线演示](#) | 📖 [文档](#) | 🐛 问题反馈](#) | ⭐ [给个星标](#)
|
||||
|
||||
## 项目结构
|
||||
</div>
|
||||
|
||||
```
|
||||
res_db/
|
||||
├── main.go # 主程序入口
|
||||
├── go.mod # Go模块文件
|
||||
├── env.example # 环境变量示例
|
||||
├── models/ # 数据模型
|
||||
│ ├── database.go # 数据库连接
|
||||
│ └── resource.go # 资源模型
|
||||
├── handlers/ # API处理器
|
||||
│ ├── resource.go # 资源相关API
|
||||
│ └── category.go # 分类相关API
|
||||
├── web/ # 前端项目
|
||||
│ ├── nuxt.config.ts # Nuxt配置
|
||||
│ ├── package.json # 前端依赖
|
||||
│ ├── pages/ # 页面
|
||||
│ ├── components/ # 组件
|
||||
│ └── composables/ # 组合式函数
|
||||
└── uploads/ # 文件上传目录
|
||||
---
|
||||
|
||||
## ✨ 功能特性
|
||||
|
||||
### 🎯 核心功能
|
||||
- **📁 多平台网盘支持** - 支持夸克网盘、阿里云盘、百度网盘、UC网盘
|
||||
- **🔍 智能搜索** - 全文搜索、标签筛选、分类浏览
|
||||
- **📊 数据统计** - 资源统计、搜索分析、热门关键词
|
||||
- **🏷️ 标签系统** - 灵活的标签管理和资源分类
|
||||
|
||||
### 🛠️ 管理功能
|
||||
- **📦 批量操作** - 批量添加、导入、管理资源
|
||||
- **🔄 自动处理** - 待处理资源自动转存和分享
|
||||
- **📈 热播剧管理** - 热门影视资源自动更新
|
||||
- **⚙️ 系统配置** - 灵活的系统参数配置
|
||||
|
||||
### 🎨 用户体验
|
||||
- **📱 响应式设计** - 支持桌面端和移动端
|
||||
- **🌙 深色模式** - 支持明暗主题切换
|
||||
- **⚡ 高性能** - 基于Go的高并发后端
|
||||
- **🎯 现代化UI** - 基于Tailwind CSS的美观界面
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ 技术架构
|
||||
|
||||
### 后端技术栈
|
||||
- **🦀 Golang 10.23+** - 高性能后端语言
|
||||
- **🌿 Gin** - 轻量级Web框架
|
||||
- **🗄️ PostgreSQL** - 关系型数据库
|
||||
- **🔧 GORM** - ORM框架
|
||||
- **🔐 JWT** - 身份认证
|
||||
|
||||
### 前端技术栈
|
||||
- **⚡ Nuxt.js 3 - Vue.js全栈框架
|
||||
- **🎨 Vue 3** - 渐进式JavaScript框架
|
||||
- **📝 TypeScript** - 类型安全的JavaScript
|
||||
- **🎨 Tailwind CSS** - 实用优先的CSS框架
|
||||
- **🔧 Pinia** - 状态管理
|
||||
|
||||
### 开发工具
|
||||
- **🐳 Docker** - 容器化部署
|
||||
- **📦 pnpm** - 快速包管理器
|
||||
- **🔍 Air** - Go热重载工具
|
||||
|
||||
---
|
||||
|
||||
## 🚀 快速开始
|
||||
|
||||
### 环境要求
|
||||
|
||||
- **Go**1.23+
|
||||
- **Node.js** 18+
|
||||
- **PostgreSQL** 15+
|
||||
- **pnpm** (推荐) 或 npm
|
||||
|
||||
### 方式一:Docker 部署(推荐)
|
||||
|
||||
```bash
|
||||
# 克隆项目
|
||||
git clone https://github.com/ctwj/panResManage.git
|
||||
cd panResManagepan.git
|
||||
cd l9pan
|
||||
|
||||
# 使用 Docker Compose 启动
|
||||
docker-compose up -d
|
||||
|
||||
# 访问应用
|
||||
open http://localhost:8080
|
||||
```
|
||||
|
||||
## 快速开始
|
||||
### 方式二:本地开发
|
||||
|
||||
### 1. 环境准备
|
||||
|
||||
确保已安装:
|
||||
- Go 1.21+
|
||||
- PostgreSQL 12+
|
||||
- Node.js 18+
|
||||
|
||||
### 2. 数据库设置
|
||||
|
||||
```sql
|
||||
CREATE DATABASE res_db;
|
||||
#### 1. 克隆项目
|
||||
```bash
|
||||
git clone https://github.com/ctwj/panResManage.git
|
||||
cd panResManage
|
||||
```
|
||||
|
||||
### 3. 后端设置
|
||||
|
||||
#### 2 后端设置
|
||||
```bash
|
||||
# 复制环境变量文件
|
||||
cp env.example .env
|
||||
|
||||
# 修改.env文件中的数据库配置
|
||||
# 编辑环境变量
|
||||
vim .env
|
||||
|
||||
# 安装依赖
|
||||
# 安装Go依赖
|
||||
go mod tidy
|
||||
|
||||
# 运行后端
|
||||
# 启动后端服务
|
||||
go run main.go
|
||||
```
|
||||
|
||||
### 4. 前端设置
|
||||
|
||||
#### 3 前端设置
|
||||
```bash
|
||||
# 进入前端目录
|
||||
cd web
|
||||
@@ -77,64 +116,150 @@ cd web
|
||||
# 安装依赖
|
||||
pnpm install
|
||||
|
||||
# 运行开发服务器
|
||||
# 启动开发服务器
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
## API接口
|
||||
|
||||
### 资源管理
|
||||
- `GET /api/resources` - 获取资源列表
|
||||
- `POST /api/resources` - 创建资源
|
||||
- `PUT /api/resources/:id` - 更新资源
|
||||
- `DELETE /api/resources/:id` - 删除资源
|
||||
- `GET /api/resources/:id` - 获取单个资源
|
||||
|
||||
### 分类管理
|
||||
- `GET /api/categories` - 获取分类列表
|
||||
- `POST /api/categories` - 创建分类
|
||||
- `PUT /api/categories/:id` - 更新分类
|
||||
- `DELETE /api/categories/:id` - 删除分类
|
||||
|
||||
### 搜索和统计
|
||||
- `GET /api/search` - 搜索资源
|
||||
- `GET /api/stats` - 获取统计信息
|
||||
|
||||
## 功能特性
|
||||
|
||||
- 📁 资源分类管理
|
||||
- 🔍 全文搜索
|
||||
- 📊 统计信息
|
||||
- 🏷️ 标签系统
|
||||
- 📈 下载/浏览统计
|
||||
- 🎨 现代化UI界面
|
||||
|
||||
## 开发
|
||||
|
||||
### 后端开发
|
||||
```bash
|
||||
# 热重载开发
|
||||
go install github.com/cosmtrek/air@latest
|
||||
air
|
||||
#### 4. 数据库设置
|
||||
```sql
|
||||
-- 创建数据库
|
||||
CREATE DATABASE res_db;
|
||||
```
|
||||
|
||||
### 前端开发
|
||||
```bash
|
||||
cd web
|
||||
npm run dev
|
||||
---
|
||||
|
||||
## 📁 项目结构
|
||||
|
||||
```
|
||||
l9pan/
|
||||
├── 📁 common/ # 通用功能模块
|
||||
│ ├── 📄 pan_factory.go # 网盘工厂模式
|
||||
│ ├── 📄 alipan.go # 阿里云盘实现
|
||||
│ ├── 📄 baidu_pan.go # 百度网盘实现
|
||||
│ ├── 📄 quark_pan.go # 夸克网盘实现
|
||||
│ └── 📄 uc_pan.go # UC网盘实现
|
||||
├── 📁 db/ # 数据库层
|
||||
│ ├── 📁 entity/ # 数据实体
|
||||
│ ├── 📁 repo/ # 数据仓库
|
||||
│ ├── 📁 dto/ # 数据传输对象
|
||||
│ └── 📁 converter/ # 数据转换器
|
||||
├── 📁 handlers/ # API处理器
|
||||
├── 📁 middleware/ # 中间件
|
||||
├── 📁 utils/ # 工具函数
|
||||
├── 📁 web/ # 前端项目
|
||||
│ ├── 📁 pages/ # 页面组件
|
||||
│ ├── 📁 components/ # 通用组件
|
||||
│ ├── 📁 composables/ # 组合式函数
|
||||
│ └── 📁 stores/ # 状态管理
|
||||
├── 📁 docs/ # 项目文档
|
||||
├── 📄 main.go # 主程序入口
|
||||
├── 📄 Dockerfile # Docker配置
|
||||
├── 📄 docker-compose.yml # Docker Compose配置
|
||||
└── 📄 README.md # 项目说明
|
||||
```
|
||||
|
||||
## 部署
|
||||
---
|
||||
|
||||
## 🔧 配置说明
|
||||
|
||||
### 环境变量配置
|
||||
|
||||
### Docker部署
|
||||
```bash
|
||||
# 构建镜像
|
||||
docker build -t res-db .
|
||||
# 数据库配置
|
||||
DB_HOST=localhost
|
||||
DB_PORT=5432
|
||||
DB_USER=postgres
|
||||
DB_PASSWORD=your_password
|
||||
DB_NAME=res_db
|
||||
|
||||
# 运行容器
|
||||
docker run -p 8080:8080 res-db
|
||||
# 服务器配置
|
||||
PORT=8080
|
||||
```
|
||||
|
||||
## 许可证
|
||||
### 支持的网盘平台
|
||||
|
||||
MIT License
|
||||
| 平台 | 状态 | 功能 |
|
||||
|------|------|------|
|
||||
| 夸克网盘 | ✅ 支持 | 转存、分享 |
|
||||
| 阿里云盘 | 🚧 开发中 | 转存、分享 |
|
||||
| 百度网盘 | 🚧 开发中 | 转存、分享 |
|
||||
| UC网盘 | 🚧 开发中 | 转存、分享 |
|
||||
|
||||
---
|
||||
|
||||
## 📚 API 文档
|
||||
|
||||
### 公开统计
|
||||
|
||||
提供,批量入库和搜索api,通过 apiToken 授权
|
||||
|
||||
> 📖 完整API文档请访问:`http://p.l9.lc/doc.html`
|
||||
|
||||
## 🤝 贡献指南
|
||||
|
||||
我们欢迎所有形式的贡献!
|
||||
|
||||
### 如何贡献
|
||||
|
||||
1**Fork** 本仓库2 **创建** 功能分支 (`git checkout -b feature/AmazingFeature`)
|
||||
3** 更改 (`git commit -mAdd some AmazingFeature'`)
|
||||
4. **推送** 到分支 (`git push origin feature/AmazingFeature`)
|
||||
5. **创建** Pull Request
|
||||
|
||||
|
||||
## 📄 许可证
|
||||
|
||||
本项目采用 [MIT License](LICENSE) 许可证。
|
||||
|
||||
```
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 L9Pan
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🙏 致谢
|
||||
|
||||
感谢以下开源项目的支持:
|
||||
|
||||
- [Gin](https://github.com/gin-gonic/gin) - Go Web框架
|
||||
- [Nuxt.js](https://nuxt.com/) - Vue.js全栈框架
|
||||
- [Tailwind CSS](https://tailwindcss.com/) - CSS框架
|
||||
- [GORM](https://gorm.io/) - Go ORM库
|
||||
|
||||
---
|
||||
|
||||
## 📞 联系我们
|
||||
|
||||
- **项目地址**: [https://github.com/ctwj/panResManage](https://github.com/ctwj/panResManage)
|
||||
- **问题反馈**: [Issues](https://github.com/ctwj/panResManage/issues)
|
||||
- **邮箱**: 510199617@qq.com
|
||||
|
||||
---
|
||||
|
||||
<div align="center>
|
||||
|
||||
**如果这个项目对您有帮助,请给我们一个 ⭐ Star!**
|
||||
|
||||
Made with ❤️ by [老九]
|
||||
|
||||
</div>
|
||||
Reference in New Issue
Block a user