返回市场
AI驱动健身应用MCP服务器

AI驱动健身应用MCP服务器

作者:firasyazid2 星标更新:2025-10-30

项目介绍

AthleTech - 基于AI的健身教练应用

AthleTech 是一款全面的健身应用程序,利用人工智能根据用户资料和健身目标提供个性化的锻炼计划和目标路线图。

项目结构

这是一个单仓库,包含两个主要组件:

AthleTech/
├── AthleTech-front/    # 使用 Expo 的 React Native 移动应用
└── MCP-backend/        # 使用 FastAPI 的 Python 后端

功能

  • 用户认证:基于JWT的安全认证系统
  • 个性化资料:详细的用户资料,包括健身水平、目标和限制
  • AI锻炼生成:根据用户数据生成定制的锻炼计划
  • 目标路线图:由AI驱动的健身目标规划和跟踪
  • 跨平台:适用于iOS、Android和Web

技术栈

前端

  • 使用 Expo 的 React Native
  • TypeScript
  • Expo 路由器(基于文件的路由)
  • Axios 用于 API 通信
  • AsyncStorage 用于本地数据持久化

后端

  • FastAPI(Python)
  • MongoDB(Motor 异步驱动程序)
  • JWT 认证
  • 集成 LLM 以实现 AI 功能
  • Pydantic 用于数据验证

开始使用

先决条件

  • Node.js(v18 或更高版本)
  • Python 3.10+
  • MongoDB(本地或远程实例)
  • Expo CLI

后端设置

  1. 导航到后端目录:
cd MCP-backend
  1. 创建虚拟环境:
python -m venv venv
source venv/bin/activate  # 在 Windows 上:venv\Scripts\activate
  1. 安装依赖项:
pip install -r requirements.txt
  1. 创建一个 .env 文件(从 .env.example 复制):
cp .env.example .env
  1. 更新 .env 文件中的配置:
MONGO_URL=mongodb://localhost:27017
SECRET_KEY=your-secret-key-here
HOST=0.0.0.0
PORT=8000
CORS_ORIGINS=http://localhost:8081
  1. 启动服务器:
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

前端设置

  1. 导航到前端目录:
cd AthleTech-front
  1. 安装依赖项:
npm install
  1. 创建一个 .env 文件(从 .env.example 复制):
cp .env.example .env
  1. 更新 .env 文件中的后端 URL:
EXPO_PUBLIC_API_URL=http://192.168.100.32:8000

注意:请替换为您机器的 IP 地址,或者在本地开发时使用 http://localhost:8000

  1. 启动 Expo 开发服务器:
npx expo start
  1. 在您首选的平台上运行:
    • i 启动 iOS 模拟器
    • a 启动 Android 模拟器
    • 使用 Expo Go 应用扫描二维码以在物理设备上运行

API 端点

认证

  • POST /auth/register - 注册新用户
  • POST /auth/login - 登录并接收 JWT 令牌

锻炼

  • GET /workout/generate - 生成个性化的锻炼计划(需要认证)

目标路线图

  • GET /goal-roadmap/generate - 生成健身目标路线图(需要认证)

环境变量

后端 (MCP-backend/.env)

  • MONGO_URL:MongoDB 连接字符串
  • SECRET_KEY:JWT 密钥(生产环境中使用强随机字符串)
  • HOST:服务器主机(默认:0.0.0.0)
  • PORT:服务器端口(默认:8000)
  • CORS_ORIGINS:允许的来源列表,逗号分隔

前端 (AthleTech-front/.env)

  • EXPO_PUBLIC_API_URL:后端 API 基础 URL

安全注意事项

  • 不要将 .env 文件提交到版本控制中
  • 生产环境中使用强随机生成的 SECRET_KEY
  • 生产环境中正确配置 CORS
  • 生产环境中使用 HTTPS

开发

运行测试(后端)

cd MCP-backend
pytest

代码检查(前端)

cd AthleTech-front
npm run lint

贡献

  1. 分叉仓库
  2. 创建功能分支 (git checkout -b feature/amazing-feature)
  3. 提交您的更改 (git commit -m '添加了惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开拉取请求

许可

本项目是私有的且具有专有性质。

联系

如有问题或需要支持,请在仓库中打开一个 Issue。