A fully open-source health library, article management, and AI-powered wellness platform delivering trusted, multilingual content worldwide.
| 🧾 License | 🛠️ Frontend CI | 📱 Expo CI | 🌟 Stars |
|
|
|
|
|
| 🍴 Forks | 🐛 Issues | 🔄 Open PRs | ✅ Closed PRs |
|
|
|
|
|
| 🤖 Android Build CI | 🍎 iOS Build CI | ⏱️ Last Commit | 📦 Repo Size |
|
|
|
|
|
- Maintainer Notice
- About the Project
- Features
- Tech Stack
- Latest Releases
- Getting Started
- Project Structure
- Development Workflow
- Build & Deployment
- Services & Dependencies
- Automation & Bot System
- Contributing
- Programs
- Blogs & Resources
- Contributors
GSSoC 2026 Season Active — High Volume Period
This repository is currently receiving a very large number of forks, issues, and pull requests due to GirlScript Summer of Code 2026. Many submissions may be unrelated to the project's roadmap (spam issues, duplicate PRs, off-topic contributions). Please read this section carefully before opening anything.
| What you can expect | Timeline |
|---|---|
| Issue auto-triaged and labelled | Within minutes of opening |
| PR automated code review posted | Within minutes of opening |
| Self-service issue assignment | Instant — just comment to claim |
| Final human review by @SB2318 | 24-72 hours depending on queue depth |
Our AI bot suite handles the initial pipeline automatically. See Automation & Bot System for a full breakdown.
UltimateHealth (also known as HealthGuide) is a fully open-source platform that combines a React Native mobile app, a Next.js web frontend, a Node.js REST API, and a Python content intelligence service — all working together to deliver trusted health content worldwide.
Live Platform: uhsocial.in | Android App: Play Store
| Feature | Description |
|---|---|
| Multilingual Articles | Write and read health content in any language |
| Collaborative Reviews | Community editing, feedback and approval workflow |
| Health Podcasts | Publish and stream verified health podcasts |
| AI Health Chat | AI-powered assistant for health-related queries |
| Contribution Analytics | Track your contribution impact |
| Content Integrity | Plagiarism detection, grammar checks and originality scoring |
| Community Safety | Flagging system and RBAC for reviewers and admins |
| Guest Mode | Read articles and listen to podcasts without signing in |
| Content Preferences | Save preferences for a personalized experience |
| Translation Support | Extend any article in your preferred language |
Admin Features: Interactive review dashboard, moderation tools and analytics.
Mobile App (React Native + Expo)
| Layer | Technology |
|---|---|
| Framework | React Native + Expo |
| Language | TypeScript / JavaScript |
| State Management | Context API / Redux |
| Navigation | React Navigation |
| Build System | EAS Build (Expo Application Services) |
| CI/CD | GitHub Actions |
Backend API (Node.js)
| Layer | Technology |
|---|---|
| Runtime | Node.js |
| Framework | Express.js |
| Database | MongoDB + Mongoose ODM |
| Authentication | JWT (JSON Web Tokens) |
| API Docs | Swagger — uhsocial.in/docs |
Content Intelligence API (Python)
| Layer | Technology |
|---|---|
| Language | Python |
| Purpose | Plagiarism detection, grammar analysis, originality scoring |
| API Docs | uhsocial.in/content-intel/docs |
Web Frontend (React)
| Layer | Technology |
|---|---|
| Framework | React |
| Branch | web branch |
| Live URL | uhsocial.in/frontend/v2 |
|
Platform: React Native (Expo)
|
Platform: Next.js
|
| Tool | Version | Purpose |
|---|---|---|
| Node.js | >= 18.x | JavaScript runtime |
| Yarn | >= 1.22.x | Package manager |
| Git | Latest | Version control |
| Expo CLI | Latest | Mobile app tooling |
| Android Studio | Latest | Android emulator and SDK |
| Xcode | Latest (macOS only) | iOS simulator |
1. Fork and Clone
git clone https://github.com/<your-username>/UltimateHealth.git
cd UltimateHealth2. Configure Environment
cp .env.example .env
# Edit .env with your API URLs and keysNever commit your
.envfile. It is already in.gitignore.
3. Install Dependencies
cd frontend
yarn install4. Run the App
# Android
npx expo prebuild --clean
npx expo run:android
# iOS (macOS only)
npx expo prebuild --clean
npx expo run:ios
# Quick preview via Expo Go
npx expo startAndroid SDK Setup (Linux/macOS)
chmod +x setup-android.sh
./setup-android.shInstall Expo and EAS CLI
npm install -g expo-cli eas-cliUltimateHealth/
├── frontend/ # React Native (Expo) mobile app
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── screens/ # App screens and pages
│ │ ├── navigation/ # Navigation configuration
│ │ ├── services/ # API service calls
│ │ ├── context/ # React Context providers
│ │ └── utils/ # Helper utilities
│ ├── app.json
│ └── package.json
├── ieee-submodules/ # IEEE IGDTUW open source contributions
├── .github/
│ ├── workflows/ # GitHub Actions CI/CD and Bot workflows
│ └── scripts/ # AI bot Python scripts
├── docs/ # Documentation files
├── .env.example
├── setup-android.sh
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
├── TEST_GUIDELINES.md
├── Learn.md
└── README.md
The backend (Node.js + MongoDB) and web frontend (React) live in separate repositories. See Services and Dependencies.
1. Fork the repository
2. Create a feature branch from main
git checkout -b feat/your-feature-name
3. Make your changes and commit
git add .
git commit -m "feat: describe your change"
4. Push your branch
git push origin feat/your-feature-name
5. Open a Pull Request targeting the main branch
6. Wait for CI + AI bot review, then request human review
| Prefix | Use for |
|---|---|
feat/ |
New features |
fix/ |
Bug fixes |
docs/ |
Documentation updates |
refactor/ |
Code refactoring |
test/ |
Tests |
chore/ |
Build scripts, CI, tooling |
Follow Conventional Commits:
feat: add multilingual article support
fix: resolve crash on podcast playback
docs: update README environment setup
chore: update GitHub Actions workflow
cd frontend
npx expo start --dev-client# Android APK/AAB
eas build --platform android --profile production
# iOS IPA (macOS + Apple Developer account required)
eas build --platform ios --profile productionBuilds are also triggered automatically via GitHub Actions on pushes to main.
| Service | URL | Purpose |
|---|---|---|
| REST API | uhsocial.in/docs | Backend API (Node.js + MongoDB) |
| Content Intelligence | uhsocial.in/content-intel/docs | Plagiarism and grammar checks (Python) |
| Web Frontend | uhsocial.in/frontend/v2 | React web app (web branch) |
| Android App | Play Store | Published Android app |
| Repository | Purpose |
|---|---|
| ultimatehealth-backend | Node.js + MongoDB backend |
| ultimatehealth-admin | Admin panel app |
| VeriWise-Content-Check | Content integrity checker |
For local development, update your .env to point to either the live APIs or locally running services.
This repository uses a custom suite of AI-powered GitHub Actions bots to automate the contribution pipeline. Every issue and PR goes through this automated system before any human review.
Bot 1 — AI Issue Triage
Workflow: ai_issue_triage.yml | Script: .github/scripts/ai_issue_triage.py
| Property | Detail |
|---|---|
| Trigger | New issue opened or manual dispatch |
| AI Model | Gemini 2.5 Flash |
| What it does | Reads title and body, cross-references recent issues and commit history, then classifies and labels the issue |
Labels applied automatically:
| Label | Meaning |
|---|---|
type:bug |
A confirmed bug report |
type:feature |
A new feature request |
type:documentation |
Documentation-only change |
type:question |
A question or help request |
frontend-web |
Affects the Next.js web app |
frontend-mobile |
Affects the React Native mobile app |
backend |
Affects the Node.js API |
level:beginner |
Good first issue — minimal complexity |
level:intermediate |
Requires codebase familiarity |
level:advanced |
Requires architectural knowledge |
level:critical |
Urgent — affects production |
Duplicate detection: Checks recent issues before labelling to avoid duplicates.
Escalation: level:critical and medical/doctor-related issues are flagged to the maintainer.
Bot 2 — AI Auto-Assignment
Workflow: ai_issue_triage.yml (same file, issue_comment trigger)
| Property | Detail |
|---|---|
| Trigger | Any new comment on an issue |
| AI Model | None — pure GitHub API logic |
| What it does | Detects assignment requests and assigns eligible contributors instantly |
How to get assigned: Comment something like "Can I work on this?", "I would like to take this", or "Assign me please".
Eligibility rules:
- Issue must be open and already labelled (triaged)
- You must have zero other active assigned issues in this repo
- Bot comments are ignored automatically
- Already-assigned issues will not be reassigned
Since no AI model is involved, assignment is nearly instant.
Bot 3 — AI PR Reviewer (Instant)
Workflow: ai_reviewer.yml | Script: .github/scripts/ai_reviewer.py
| Property | Detail |
|---|---|
| Trigger | New pull request opened or manual dispatch |
| AI Model | Gemini 2.5 Flash |
| What it does | Fetches PR diff, filters noise (lockfiles, build artifacts), posts a structured review |
Review structure:
Critical -- Must fix before merge
Important -- Should fix
Suggestions -- Optional improvements
Applies gssoc label to mark bot-reviewed PRs.
Bot 4 — Automated PR Reviewer (Smart Re-review)
Workflow: automated_reviewer.yml | Script: .github/scripts/automated_reviewer.py
| Property | Detail |
|---|---|
| Trigger | New pull request opened or manual dispatch |
| AI Model | Gemini 2.5 Flash |
| Cooldown | 168 hours (7 days) after last review |
| What it does | Label-aware, context-aware reviewer that tracks previous review history |
Smart skip conditions:
- PR contains only lockfiles, build artifacts, or auto-generated files
- PR was already reviewed within the cooldown window
- PR has no reviewable diff
Re-review trigger: After 168h + new commits pushed, the bot posts a follow-up review checking if previous feedback was addressed.
All Other Workflows
| Workflow | Trigger | Purpose |
|---|---|---|
greetings_issue.yml |
New issue or PR | Friendly welcome message |
pr_greet.yml |
New PR | Greets first-time contributors |
close-old-issue.yml |
Scheduled | Closes stale issues |
close-old-pr.yml |
Scheduled | Closes stale PRs |
auto-comment-pr-merge.yml |
PR merged | Thank-you comment on merge |
close-on-merge.yml |
PR merged | Auto-closes linked issue |
autocomment-iss-close.yml |
Issue closed | Closing message on issue |
update-contributors.yml |
Push to main | Keeps contributors table updated |
pr-governance.yml |
PR events | Enforces PR standards |
pr-title-checker.yml |
PR opened/edited | Validates Conventional Commit title |
mentor.yml |
Issue/PR events | Mentor guidance for new contributors |
frontend-ci.yml |
Push / PR to main | Lint and type-check |
eas-build.yml |
Push to main | Expo EAS build (Android + iOS) |
android-build-validation.yml |
Push / PR | Android build validation |
ios-build-validation.yml |
Push / PR | iOS build validation |
knip-check.yml |
Push / PR | Dead-code analysis (Knip) |
Frontend dead-code checks use Knip. See Knip Guide and Knip Contributor Guide.
We welcome contributions from everyone — developers, designers, writers, and testers!
- Browse open issues or create a new one
- Comment on the issue to request assignment (bot assigns automatically)
- Follow the Development Workflow above
- Read CONTRIBUTING.md for detailed guidelines
- Follow CODE_OF_CONDUCT.md
- Follow TEST_GUIDELINES.md when adding tests
| Type | Examples |
|---|---|
| Bug fixes | Fix crashes, incorrect behaviour, UI bugs |
| New features | New screens, API endpoints, integrations |
| Content | Health articles, translations |
| Documentation | README, guides, code comments |
| UI/UX | Design improvements, accessibility |
| Tests | Unit tests, E2E tests, coverage improvements |
We appreciate every contribution — big or small.
Made with love by the UltimateHealth Community
Star this repo if you find it helpful — it motivates us to keep building!


