# 结伴客 - 宠物认领平台 一个基于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/ # 运维脚本 ``` ## 📚 文档导航 ### 需求文档 - [整个项目需求文档](./docs/整个项目需求文档.md) - 项目整体需求和功能规划 - [官网需求文档](./docs/官网需求文档.md) - 官网功能需求 - [后端管理需求文档](./docs/后端管理需求文档.md) - 后端管理系统需求 - [管理后台需求文档](./docs/管理后台需求文档.md) - 管理后台功能需求 - [小程序app需求文档](./docs/小程序app需求文档.md) - 小程序功能需求 ### 架构文档 - [整个项目的架构文档](./docs/整个项目的架构文档.md) - 项目整体架构设计 - [后端架构文档](./docs/后端架构文档.md) - 后端服务架构 - [小程序架构文档](./docs/小程序架构文档.md) - 小程序架构设计 - [管理后台架构文档](./docs/管理后台架构文档.md) - 管理后台架构 ### 详细设计文档 - [数据库设计文档](./docs/数据库设计文档.md) - 数据库表结构和关系设计 - [管理后台接口设计文档](./docs/管理后台接口设计文档.md) - 管理后台API接口 - [小程序app接口设计文档](./docs/小程序app接口设计文档.md) - 小程序API接口 ### 开发文档 - [后端开发文档](./docs/后端开发文档.md) - 后端开发指南和任务计划 - [小程序app开发文档](./docs/小程序app开发文档.md) - 小程序开发指南和任务计划 - [管理后台开发文档](./docs/管理后台开发文档.md) - 管理后台开发指南和任务计划 - [后端管理开发文档](./docs/后端管理开发文档.md) - 后端管理开发指南和任务计划 ### 运维文档 - [测试文档](./docs/测试文档.md) - 测试策略、用例和自动化测试 - [部署文档](./docs/部署文档.md) - 环境部署和配置指南 - [运维文档](./docs/运维文档.md) - 系统监控、维护和故障处理 - [安全文档](./docs/安全文档.md) - 安全策略和防护措施 - [用户手册文档](./docs/用户手册文档.md) - 用户操作指南 ## 🚀 快速开始 ### 环境要求 - Node.js 18+ - MySQL 8.0+ - Redis 6.0+ - Docker & Docker Compose (可选) ### 本地开发 1. **克隆项目** ```bash git clone https://github.com/your-org/jiebanke.git cd jiebanke ``` 2. **安装依赖** ```bash # 后端服务 cd backend npm install # 管理后台 cd ../admin-system npm install # 小程序 cd ../mini-program npm install ``` 3. **配置环境** ```bash # 复制环境配置文件 cp backend/.env.example backend/.env cp admin-system/.env.example admin-system/.env ``` 4. **启动服务** ```bash # 启动后端服务 cd backend npm run dev # 启动管理后台 cd admin-system npm run dev # 启动小程序开发工具 cd mini-program npm run dev ``` ### Docker 部署 ```bash # 构建并启动所有服务 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](LICENSE) 文件了解详情 ## 📞 联系我们 - 项目维护者: [团队名称] - 邮箱: contact@jiebanke.com - 项目地址: https://github.com/your-org/jiebanke - 文档地址: https://docs.jiebanke.com --- **注意**: 详细的开发、部署和使用说明请参考 `docs/` 目录下的相关文档。