[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-92237":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":16,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":29,"readmeContent":30,"aiSummary":31,"trendingCount":16,"starSnapshotCount":16,"syncStatus":32,"lastSyncTime":33,"discoverSource":34},92237,"ai-healthcare-agent-app","Don-Uwe\u002Fai-healthcare-agent-app","Don-Uwe","ai agent healthcare app with centralized testing and build workflows for reliable health-content delivery","",null,"TypeScript",151,1055,83,14,0,49.07,"MIT License",false,"main",true,[23,24,25,26,27,28],"ai-agent","ai-agent-app","ai-app","ai-healthcare","healthcare-agent","healthcare-app","2026-07-22 04:02:05","# UltimateHealth\n\nOpen-source mobile platform for trusted health articles, podcasts, AI-assisted wellness chat, and community-driven content review. This repository contains the **Expo React Native application** and supporting TypeScript packages.\n\n## Feature Highlights\n\n- **Multilingual articles** — Read and publish health content with translation workflows\n- **Podcast library** — Stream, record, and manage health podcasts with offline support\n- **AI wellness chat** — Character-based health Q&A powered by configurable AI backends\n- **Guest mode** — Browse articles and podcasts without signing in\n- **Community review** — Collaborative editing, trust signals, and moderation tooling\n- **Wellness dashboard** — Activity tracking and wearable sync entry points\n- **Push notifications** — Firebase Cloud Messaging integration\n- **Optional cache layer** — Redis-backed persistence package for development tooling\n\n## Architecture\n\n```mermaid\nflowchart TB\n  subgraph Mobile[\"UltimateHealth Mobile App\"]\n    UI[Screens and Components]\n    State[Redux Store]\n    Query[TanStack Query]\n    Config[Runtime Config]\n  end\n\n  subgraph Packages[\"Monorepo Packages\"]\n    Persistence[packages\u002Fpersistence]\n  end\n\n  subgraph External[\"External Services\"]\n    API[Node.js REST API]\n    Socket[WebSocket Server]\n    Intel[Content Intelligence API]\n    Redis[(Redis - optional)]\n  end\n\n  UI --> State\n  UI --> Query\n  Query --> API\n  UI --> Socket\n  UI --> Intel\n  Persistence --> Redis\n  Config --> UI\n```\n\n## Request Workflow\n\n```mermaid\nsequenceDiagram\n  participant User\n  participant App as Mobile App\n  participant Redux as Redux Store\n  participant API as REST API\n\n  User->>App: Open article feed\n  App->>API: GET \u002Farticles\n  API-->>App: Article list JSON\n  App->>Redux: Cache filter state\n  App-->>User: Render feed\n\n  User->>App: Like article\n  App->>API: POST \u002Farticles\u002F:id\u002Flike\n  API-->>App: Updated counts\n  App-->>User: Optimistic UI update\n```\n\n## Project Structure\n\n```\nUltimateHealth\u002F\n├── frontend\u002F              # Expo React Native app (TypeScript)\n│   ├── src\u002F\n│   │   ├── components\u002F    # Shared UI\n│   │   ├── screens\u002F       # Route views\n│   │   ├── hooks\u002F         # API hooks\n│   │   ├── services\u002F      # Monitoring, storage helpers\n│   │   ├── config\u002F        # Environment accessors\n│   │   └── store\u002F         # Redux slices\n│   └── app.config.js      # Expo dynamic config\n├── packages\u002F\n│   └── persistence\u002F       # Optional Redis layer\n├── docs\u002F\n│   └── internal\u002F          # Maintainer audit and structure notes\n└── .github\u002Fworkflows\u002F     # CI and EAS build pipelines\n```\n\nSee [docs\u002Finternal\u002FSTRUCTURE.md](docs\u002Finternal\u002FSTRUCTURE.md) for structural decisions.\n\n## Prerequisites\n\n| Tool | Version | Notes |\n|------|---------|-------|\n| Node.js | ≥ 20 | LTS recommended |\n| npm or Yarn | Latest | npm workspaces supported at repo root |\n| Expo CLI | Via `npx expo` | Bundled with project |\n| Android Studio | Latest | Android emulator |\n| Xcode | Latest | macOS only, iOS builds |\n\n## Installation\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FSB2318\u002FUltimateHealth.git\ncd UltimateHealth\n\n# Install all workspaces (frontend + packages)\nnpm install\n\n# Copy environment templates\ncp frontend\u002F.env.example frontend\u002F.env\ncp packages\u002Fpersistence\u002F.env.example packages\u002Fpersistence\u002F.env\n```\n\n### Mobile app only\n\n```bash\ncd frontend\nnpm install --legacy-peer-deps\nnpm run check-env\nnpm run start\n```\n\n## Configuration\n\n### Mobile environment (`frontend\u002F.env`)\n\n| Variable | Purpose |\n|----------|---------|\n| `PROD_URL` | REST API base URL |\n| `SOCKET_PROD` | WebSocket server URL |\n| `CONTENT_CHECKER_PROD` | Content intelligence service URL |\n| `EXPO_PUBLIC_GEMINI_API_KEY` | Gemini API key for AI summaries |\n| `EXPO_PUBLIC_SENTRY_DSN` | Sentry error reporting DSN |\n| `FIREBASE_*` | Firebase project credentials |\n\nValues are injected through `app.config.js` into `expo-constants` at build time.\n\n### Redis persistence (`packages\u002Fpersistence\u002F.env`)\n\n| Variable | Default | Purpose |\n|----------|---------|---------|\n| `REDIS_ENABLED` | `true` | Toggle cache layer |\n| `REDIS_URL` | — | Full connection URL (optional) |\n| `REDIS_HOST` | `127.0.0.1` | Redis host |\n| `REDIS_PORT` | `6379` | Redis port |\n| `REDIS_KEY_PREFIX` | `ultimatehealth:` | Key namespace |\n| `REDIS_MAX_RETRIES` | `10` | Retry limit |\n| `UH_LOG_LEVEL` | `info` | Persistence log level |\n\n## Development\n\n```bash\n# From repository root — full validation suite\nnpm run validate\n\n# Frontend only\ncd frontend\nnpm run type-check\nnpm run lint\nnpm run test\nnpm run start          # Expo dev server\nnpm run android        # Native Android build\nnpm run ios            # Native iOS build (macOS)\n```\n\n### Branch naming\n\n| Prefix | Use |\n|--------|-----|\n| `feat\u002F` | New features |\n| `fix\u002F` | Bug fixes |\n| `docs\u002F` | Documentation |\n| `refactor\u002F` | Internal refactors |\n| `test\u002F` | Test coverage |\n| `chore\u002F` | Tooling and CI |\n\nUse [Conventional Commits](https:\u002F\u002Fwww.conventionalcommits.org\u002F) for commit messages.\n\n## Testing\n\n```bash\n# Unit tests (Jest + React Native Testing Library)\ncd frontend && npm test\n\n# Persistence package (Vitest)\ncd packages\u002Fpersistence && npm test\n\n# Dead code analysis\ncd frontend && npm run knip\n```\n\nTest files live alongside source under `__tests__\u002F` directories. See [TEST_GUIDELINES.md](TEST_GUIDELINES.md) for project conventions.\n\n## Troubleshooting\n\n### Metro port conflict\n\n```bash\nnpx kill-port 8081\nnpx expo start --port 8082\n```\n\n### npm peer dependency errors\n\n```bash\ncd frontend\nnpm install --legacy-peer-deps\n```\n\n### Android SDK not found\n\nSet `ANDROID_HOME` to your SDK path and add platform-tools to `PATH`.\n\n### Expo Go SDK mismatch\n\nUpdate Expo Go on your device or use a development build:\n\n```bash\nnpx expo start --dev-client\n```\n\n### Type-check failures after dependency updates\n\n```bash\nrm -rf node_modules\nnpm install --legacy-peer-deps\nnpm run type-check\n```\n\n### Redis connection refused\n\nEnsure Redis is running locally (`redis-server`) or set `REDIS_ENABLED=false` to skip the persistence layer.\n\n## FAQ\n\n**Where is the backend API?**  \nThe Node.js REST API and MongoDB backend live in a separate repository ([ultimatehealth-backend](https:\u002F\u002Fgithub.com\u002FSB2318\u002Fultimatehealth-backend)). Configure `PROD_URL` to point at production or your local instance.\n\n**Is Redis required for the mobile app?**  \nNo. The persistence package is optional and targets development tooling, CI fixtures, and future cache integrations — not the React Native runtime.\n\n**Can I use npm instead of Yarn?**  \nYes. The root workspace uses npm. The frontend CI still references Yarn lockfiles; both package managers work locally with `--legacy-peer-deps` for npm.\n\n**How do I run on a physical device?**  \nUse Expo dev client or EAS builds. Push notifications require a physical device with FCM configured.\n\n## Contributing\n\n1. Browse [open issues](https:\u002F\u002Fgithub.com\u002FSB2318\u002FUltimateHealth\u002Fissues)\n2. Fork the repository and create a feature branch\n3. Run `npm run validate` before opening a PR\n4. Read [CONTRIBUTING.md](CONTRIBUTING.md) and [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)\n\nMaintainer documentation:\n\n- [docs\u002Finternal\u002FAUDIT.md](docs\u002Finternal\u002FAUDIT.md) — Architecture audit and improvement log\n- [docs\u002Finternal\u002FSTRUCTURE.md](docs\u002Finternal\u002FSTRUCTURE.md) — Folder layout decisions\n\n## License\n\nSee [LICENSE](LICENSE) for details.\n\n## Related Services\n\n| Service | Repository |\n|---------|------------|\n| Backend API | [ultimatehealth-backend](https:\u002F\u002Fgithub.com\u002FSB2318\u002Fultimatehealth-backend) |\n| Admin panel | [ultimatehealth-admin-app](https:\u002F\u002Fgithub.com\u002FSB2318\u002Fultimatehealth-admin-app) |\n| Content checker | [VeriWise-Content-Check](https:\u002F\u002Fgithub.com\u002FSB2318\u002FVeriWise-Content-Check) |\n","这是一个面向医疗健康领域的开源AI代理移动应用，提供可信的健康资讯、播客、AI辅助健康问答及社区协作内容审核功能。核心支持多语言健康文章发布与翻译、离线播客管理、可配置后端的AI健康对话、游客浏览模式、基于信任信号的社区协同编辑，以及与可穿戴设备对接的健康仪表盘。采用Expo React Native（TypeScript）构建，集成Redux、TanStack Query、Firebase推送和可选Redis缓存层，适用于健康科普平台、数字健康服务及医疗内容社区等场景。",2,"2026-07-08 04:29:55","CREATED_QUERY"]