master
百盘搜 (BPS)
一个聚合网盘资源搜索的 Web 应用程序。
功能特点
- 支持多个网盘源(百度网盘、夸克网盘、UC网盘、迅雷网盘)
- 实时搜索和结果过滤
- 一键获取临时分享链接
- 自动清理过期资源
技术栈
- 前端:Nuxt.js (Vue 3) + TypeScript + Tailwind CSS
- 后端:Express.js + TypeScript
- 数据库:Postgres14 + Prisma ORM
- 缓存:Redis
- 部署:Docker + Docker Compose
开发环境设置
前置要求
- Node.js 20+
- Docker 和 Docker Compose
- MySQL 8.0
- Redis 7.0
安装步骤
-
克隆仓库:
git clone https://github.com/yourusername/bps.git cd bps -
安装依赖:
# 安装前端依赖 cd frontend npm install # 安装后端依赖 cd ../backend npm install -
配置环境变量:
# 后端 cp backend/.env.example backend/.env # 编辑 .env 文件,填入必要的配置信息 -
初始化数据库:
cd backend npx prisma migrate dev -
启动开发服务器:
# 启动前端(在 frontend 目录下) npm run dev # 启动后端(在 backend 目录下) npm run dev
使用 Docker 部署
-
构建和启动所有服务:
docker-compose up -d -
初始化数据库(首次部署时):
docker-compose exec backend npx prisma migrate deploy -
查看日志:
docker-compose logs -f
项目结构
bps/
├── frontend/ # Nuxt.js 前端应用
├── backend/ # Express.js 后端服务
│ ├── src/
│ │ ├── adapters/ # 网盘适配器
│ │ ├── api/ # API 路由
│ │ ├── services/ # 业务逻辑
│ │ └── utils/ # 工具函数
│ └── prisma/ # 数据库模型和迁移
├── doc/ # 项目文档
└── docker-compose.yml # Docker 配置
API 文档
搜索接口
GET /api/search?keyword={keyword}
获取链接接口
POST /api/generate-link
Content-Type: application/json
{
"itemId": "string"
}
贡献指南
- Fork 项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
许可证
MIT License - 详见 LICENSE 文件
Languages
TypeScript
63.5%
Vue
34.3%
Dockerfile
1.2%
JavaScript
1%