百盘搜 (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

安装步骤

  1. 克隆仓库:

    git clone https://github.com/yourusername/bps.git
    cd bps
    
  2. 安装依赖:

    # 安装前端依赖
    cd frontend
    npm install
    
    # 安装后端依赖
    cd ../backend
    npm install
    
  3. 配置环境变量:

    # 后端
    cp backend/.env.example backend/.env
    # 编辑 .env 文件,填入必要的配置信息
    
  4. 初始化数据库:

    cd backend
    npx prisma migrate dev
    
  5. 启动开发服务器:

    # 启动前端(在 frontend 目录下)
    npm run dev
    
    # 启动后端(在 backend 目录下)
    npm run dev
    

使用 Docker 部署

  1. 构建和启动所有服务:

    docker-compose up -d
    
  2. 初始化数据库(首次部署时):

    docker-compose exec backend npx prisma migrate deploy
    
  3. 查看日志:

    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"
}

贡献指南

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

许可证

MIT License - 详见 LICENSE 文件

S
Description
No description provided
Readme
11 MiB
Languages
TypeScript 63.5%
Vue 34.3%
Dockerfile 1.2%
JavaScript 1%