# LifeSync-Health-api **Repository Path**: zeroicey/life-sync-health-api ## Basic Information - **Project Name**: LifeSync-Health-api - **Description**: LifeSync-Health-api 是 心身同调·全维健康 项目的后端 API 服务模块。该仓库包含了健康数据管理、用户认证、智能分析以及外部设备同步的所有后端逻辑。通过 RESTful API,前端应用、移动端客户端以及智能设备都可以与后端进行数据交互。本仓库是项目的核心,负责提供健康数据的存储、管理和分析服务。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2024-11-13 - **Last Updated**: 2025-04-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: Hono, Bunjs, MongoDB ## README # 心身同调·全维健康 API 服务 🌟 LifeSync · Holistic Health API Service

LifeSync Logo

简介功能快速开始架构API贡献

## 📖 项目简介 心身同调·全维健康是一款创新的健康管理平台后端 API 服务,致力于为用户提供全方位的健康数据管理、分析与智能建议服务。通过整合多源数据,结合 AI 分析,为用户打造个性化的健康管理解决方案。 ## 🚀 核心功能 - 📊 **健康数据管理** - 体重、血压、心率等健康指标记录 - 智能设备数据同步 - 地理位置信息支持 - 🧠 **心理健康追踪** - 情绪记录与分析 - 心情日记 - 压力水平评估 - 🔄 **设备集成** - 支持智能手表数据同步 - 多设备数据整合 - 实时数据更新 - 📱 **用户系统** - 安全的用户认证 - 个人档案管理 - 数据隐私保护 ## 💻 技术栈 ### 后端框架 - ⚡ **Hono.js** - 高性能 Web 框架 - 🔷 **TypeScript** - 类型安全 - 🎯 **Bun.js** - 现代 JavaScript 运行时 ### 数据存储 - 🍃 **MongoDB** - 数据存储 - Mongoose ODM - 地理空间索引支持 - 文档型数据库 ## ⚙️ 系统要求 - Bun >= 1.0.0 - MongoDB >= 5.0 - Node.js >= 18 (可选) ## 🚀 快速开始 ### 1. 克隆项目 ```bash git clone https://gitee.com/zeroicey/life-sync-health-api.git cd life-sync-health-api ``` ### 2. 安装依赖 ```bash bun install ``` ### 3. 环境配置 ```bash cp .env.template .env ``` ### 编辑 .env 文件: ```env PORT=3000 MONGO_URL=mongodb://admin:admin@localhost:27017/life_track?authSource=admin ``` ### 4. 启动服务 ```bash bun run dev ``` ## 📊 数据库架构 ### MongoDB Collections #### 用户(User) ```javascript interface User { _id: ObjectId; email: string; password: string; username: string; gender: string; description: string; createdAt: Date; birthdayAt: Date; } ``` #### 用户健康基线(Baseline) ```javascript interface Baseline { _id: ObjectId; userId: string; height: number; weight: number; updatedAt: Date; } ``` #### 健康记录(HealthRecord) ```javascript interface HealthRecord { _id: ObjectId; userId: string; recordType: "weight" | "bloodPressure" | "heartRate" | "sleepQuality"; timestamp: Date; details: { weight?: { value: number; unit: "kg" | "lb"; }; bloodPressure?: { systolic: number; diastolic: number; pulse?: number; }; heartRate?: { current: number; max?: number; min?: number; avg?: number; }; sleepQuality?: { totalSleepDuration: number; sleepStartTime?: Date; wakeUpTime?: Date; }; }; remark?: string; source: "manual" | "device"; deviceId?: string; location?: { coordinates: [number, number]; }; } ``` #### 心情记录(Mood) ```javascript interface Mood { _id: ObjectId; userId: string; createdAt: Date; mood: { level: 1 | 2 | 3 | 4 | 5; }; remark: string; } ``` #### 心路笔记(Memo) ```javascript interface Memo { _id: ObjectId; userId: string; content: string; advice?: string; mood?: { level: 1 | 2 | 3 | 4 | 5; }; createdAt: Date; updatedAt: Date; } ``` #### 用户设备(UserDevice) ```javascript interface UserDevice { _id: ObjectId; userId: string; deviceId: string; deviceType: string; isActive: boolean; connectedAt: Date; } ``` ## 📚 API 文档 ### 认证相关 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 - `POST /api/auth/logout` - 用户登出 - `GET /api/auth/me` - 获取当前用户信息 - `PUT /api/auth/me` - 更新用户信息 - `DELETE /api/auth/me` - 删除用户账号 ### 健康记录 - `GET /api/health/records` - 获取健康记录列表 - `POST /api/health/records` - 创建健康记录 - `GET /api/health/records/:id` - 获取单个记录 - `PUT /api/health/records/:id` - 更新记录 - `DELETE /api/health/records/:id` - 删除记录 - `GET /api/health/stats/trends` - 获取健康趋势 ### 心情记录 - `GET /api/mood` - 获取心情记录列表 - `POST /api/mood` - 创建心情记录 - `GET /api/mood/:id` - 获取单个记录 - `PUT /api/mood/:id` - 更新记录 - `DELETE /api/mood/:id` - 删除记录 - `GET /api/mood/stats` - 获取心情统计 ### 心路笔记 - `GET /api/memo` - 获取笔记列表 - `POST /api/memo` - 创建笔记 - `PUT /api/memo/:id` - 更新笔记 - `DELETE /api/memo/:id` - 删除笔记 ### 设备管理 - `GET /api/devices` - 获取设备列表 - `POST /api/devices/bind` - 绑定设备 - `POST /api/devices/unbind` - 解绑设备 - `POST /api/devices/sync` - 同步设备数据 ## 👥 开发团队 ### ACACIA 团队 - 👨‍💻 **张开鑫** - 全栈开发 - 👨‍💻 **汪宁** - 文档编写 - 👨‍💻 **郭嘉荣** - 代码测试 ### 指导老师 - 👨‍🏫 **欧凯曈** - 👨‍🏫 **李伟梁** ## 🔗 相关项目 - 🌐 [Web 前端](https://gitee.com/zeroicey/life-sync-health-web.git) - 🤖 [AI 服务](https://gitee.com/zeroicey/life-sync-health-ai.git) ## 📄 许可证 版权所有 © 2024 ACACIA 团队 本项目采用修改版 MIT 许可证。详见 [LICENSE](LICENSE) 文件。 ## 📞 联系我们 - Email: zeroicey.hp@outlook.com - Wechat: Y3245632373 ## 🛠️ 项目结构 ``` life-sync-health-api/ ├── src/ │ ├── db/ # 数据库相关 │ │ ├── model.ts # 数据模型定义 │ │ └── mongo.ts # MongoDB 配置 │ ├── middlewares/ # 中间件 │ │ ├── validate.ts # 数据验证 │ │ ├── auth.ts # 身份验证 │ │ └── response.ts # 响应处理 │ ├── routes/ # 路由定义 │ │ ├── auth.ts # 认证路由 │ │ ├── health.ts # 健康数据路由 │ │ ├── mood.ts # 心情记录路由 │ │ ├── memo.ts # 心路笔记路由 │ │ └── devices.ts # 设备管理路由 │ ├── services/ # 业务逻辑 │ │ ├── auth.ts # 认证服务 │ │ ├── health.ts # 健康数据服务 │ │ ├── mood.ts # 心情记录服务 │ │ ├── memo.ts # 心路笔记服务 │ │ └── devices.ts # 设备管理服务 │ └── index.ts # 应用入口 ├── docs/ # 文档 └── package.json ``` ---

用科技守护健康,用数据改善生活 ❤️