Files
jiebanke/README.md

7.3 KiB
Raw Permalink Blame History

结伴客 - 宠物认领平台

一个基于Vue.js和Node.js的宠物认领平台帮助流浪动物找到温暖的家。

项目概述

结伴客是一个专业的宠物认领平台致力于为流浪动物提供一个温暖的归宿。平台通过现代化的Web技术为用户提供便捷的宠物发布、搜索、认领服务同时为管理员提供完善的后台管理功能。

核心功能

  • 用户系统: 完整的用户注册、登录、个人信息管理
  • 动物管理: 动物信息发布、编辑、状态管理
  • 认领流程: 在线认领申请、审核、跟踪
  • 地图定位: 基于地理位置的动物搜索和展示
  • 管理后台: 用户管理、动物管理、数据统计、文件管理
  • 消息通知: 实时消息推送和邮件通知
  • 数据统计: 详细的业务数据分析和报表

技术架构

前端技术栈

  • 框架: Vue.js 3.x + Composition API
  • UI组件: Element Plus
  • 状态管理: Pinia
  • 路由: Vue Router 4
  • 构建工具: Vite
  • HTTP客户端: Axios
  • 样式: SCSS + CSS Modules

后端技术栈

  • 运行时: Node.js 18+
  • 框架: Express.js
  • 数据库: MySQL 8.0
  • 缓存: Redis 6.0
  • 认证: JWT + Passport
  • 文件处理: Multer + Sharp
  • 日志: Winston
  • 测试: Jest + Supertest

基础设施

  • 容器化: Docker + Docker Compose
  • 反向代理: Nginx
  • 进程管理: PM2
  • 监控: Prometheus + Grafana
  • 日志收集: ELK Stack
  • CI/CD: GitHub Actions

🗂️ 项目结构

jiebanke/
├── README.md                    # 项目入口文档
├── docs/                        # 项目文档目录
│   ├── 整个项目需求文档.md        # 项目整体需求
│   ├── 官网需求文档.md           # 官网需求
│   ├── 后端管理需求文档.md        # 后端管理需求
│   ├── 管理后台需求文档.md        # 管理后台需求
│   ├── 小程序app需求文档.md       # 小程序需求
│   ├── 整个项目的架构文档.md      # 项目整体架构
│   ├── 后端架构文档.md           # 后端架构
│   ├── 小程序架构文档.md         # 小程序架构
│   ├── 管理后台架构文档.md        # 管理后台架构
│   ├── 数据库设计文档.md         # 数据库设计
│   ├── 管理后台接口设计文档.md    # 管理后台接口
│   ├── 小程序app接口设计文档.md   # 小程序接口
│   ├── 后端开发文档.md           # 后端开发指南
│   ├── 小程序app开发文档.md      # 小程序开发指南
│   ├── 管理后台开发文档.md       # 管理后台开发指南
│   ├── 后端管理开发文档.md       # 后端管理开发指南
│   ├── 测试文档.md              # 测试策略和规范
│   ├── 部署文档.md              # 部署指南
│   ├── 运维文档.md              # 运维手册
│   ├── 安全文档.md              # 安全规范
│   └── 用户手册文档.md          # 用户操作手册
├── admin-system/               # 管理后台目录
├── mini-program/               # 小程序app目录
├── backend/                    # 后端服务目录
├── website/                    # 官网目录
└── scripts/                    # 脚本目录
    ├── database/               # 数据库脚本
    ├── deploy/                 # 部署脚本
    ├── test/                   # 测试脚本
    └── ops/                    # 运维脚本

📚 文档导航

需求文档

架构文档

详细设计文档

开发文档

运维文档

🚀 快速开始

环境要求

  • Node.js 18+
  • MySQL 8.0+
  • Redis 6.0+
  • Docker & Docker Compose (可选)

本地开发

  1. 克隆项目
git clone https://github.com/your-org/jiebanke.git
cd jiebanke
  1. 安装依赖
# 后端服务
cd backend
npm install

# 管理后台
cd ../admin-system
npm install

# 小程序
cd ../mini-program
npm install
  1. 配置环境
# 复制环境配置文件
cp backend/.env.example backend/.env
cp admin-system/.env.example admin-system/.env
  1. 启动服务
# 启动后端服务
cd backend
npm run dev

# 启动管理后台
cd admin-system
npm run dev

# 启动小程序开发工具
cd mini-program
npm run dev

Docker 部署

# 构建并启动所有服务
docker-compose up -d

# 查看服务状态
docker-compose ps

# 查看日志
docker-compose logs -f

📋 开发规范

  • 代码规范: 遵循 ESLint + Prettier 配置
  • 提交规范: 使用 Conventional Commits 格式
  • 分支策略: Git Flow 工作流
  • 测试要求: 单元测试覆盖率 ≥ 80%
  • 文档更新: 代码变更需同步更新文档

🤝 贡献指南

  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 文件了解详情

📞 联系我们


注意: 详细的开发、部署和使用说明请参考 docs/ 目录下的相关文档。