Skip to content

本地运行

本页记录本地启动文档站、后端服务和 Flutter App 的最小闭环。命令默认在仓库根目录 D:\Fitdoc_app 下执行。

运行前准备

对象要求说明
Node.js可运行 npm用于 VitePress 文档站。
Python可创建虚拟环境后端依赖由 apps/backend_service/requirements.txt 管理。
PostgreSQL本地库或可访问的开发库后端启动和 Alembic 迁移依赖 DATABASE_URL
Flutter SDK可运行 flutter pub getApp、Web 调试和安装包构建依赖 Flutter。
环境变量.env.example 复制并填写本地值不使用生产密钥和生产连接串做本地默认配置。

文档站

powershell
cd D:\Fitdoc_app\docs_site
npm install
npm run docs:dev

默认开发服务由 VitePress 启动在本机地址,站点基路径为 /doc-center/

text
http://127.0.0.1:5173/doc-center/

构建与本地预览:

powershell
npm run docs:build
npm run docs:preview

构建产物位于:

text
docs_site/.vitepress/dist/

后端服务

powershell
cd D:\Fitdoc_app\apps\backend_service
python -m venv venv
.\venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .env
alembic upgrade head
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

本地后端健康检查:

powershell
curl http://127.0.0.1:8000/health

端口口径:

环境后端端口用途
本地开发8000uvicorn --reload 调试。
生产 ECS8001fitdoc-core.service behind Nginx。

Flutter App

powershell
cd D:\Fitdoc_app\apps\flutter_app
flutter pub get
flutter run -d chrome

移动端设备调试:

powershell
flutter run -d android

常用环境注入:

powershell
flutter run -d chrome `
  --dart-define=APP_ENV=development `
  --dart-define=API_BASE_URL=http://127.0.0.1:8000/api `
  --dart-define=VIDEO_BASE_URL=http://127.0.0.1:8000/static/videos

API_BASE_URL 需要包含 /api 前缀,因为 Flutter client 会在此基础上拼接 /auth/chat/sport 等模块路径。

本地验证

检查命令或入口预期
文档站构建npm run docs:build构建通过。
后端健康检查curl http://127.0.0.1:8000/health返回健康状态 JSON。
API 文档面http://127.0.0.1:8000/docsFastAPI Swagger UI 可打开。
Flutter 依赖flutter pub get依赖解析成功。
Flutter Webflutter run -d chromeApp 能加载并发起 API 请求。

来源锚点

  • AGENTS.md
  • docs_site/package.json
  • apps/backend_service/requirements.txt
  • apps/backend_service/alembic.ini
  • apps/backend_service/.env.example
  • apps/flutter_app/lib/config/environment_config.dart