Exceptions / Known Issues:
- Heart rate is currently simulated and not read from an Apple Watch.
Login Credentials:
No login credentials needed; register for a new account.
- Overview
- Project Structure
- Prerequisites
- Setup Instructions
- Running the Application
- License
HealthDex is a robust Personal Health Management System (PHMS) that enables users to:
- Track vital signs: Heart rate, blood pressure, glucose, cholesterol, etc.
- Receive alerts: Email and in-app notifications for abnormal readings.
- Manage health data: Medications, diet logs, appointments, and custom notes.
- Secure authentication: Firebase Authentication with biometric (fingerprint) login support.
- Multi-language support: Powered by LibreTranslate for on-device translation.
HealthDex/
├── PHMS-Android/ # Android application code (Jetpack Compose)
├── PHMS-Backend/ # Ktor backend server code
├── Supporting/
│ └── Language Translator/ # LibreTranslate integration scripts and docs
├── LICENSE.md # License information
└── README.md # Project documentation (this file)
Before you begin, make sure you have the following installed:
- Git: Version control system
- Java Development Kit (JDK) 11+: Verify by running:
java -version
- Android Studio: Official IDE for Android development
- Docker (optional): For setting up LibreTranslate locally
git clone https://github.com/V-prajit/HealthDex
cd HealthDexThis project uses Firebase for authentication and backend services.
- Go to the Firebase Console and create a new project.
- Add an Android app with package name
com.example.phms. - Download the generated
google-services.jsonfile. - Place it in:
HealthDex/PHMS-Android/app/google-services.json
- In Firebase Console > Project Settings > Service Accounts, generate a new private key.
- Download and rename it to
serviceAccountKey.json. - Place it in:
HealthDex/PHMS-Backend/src/main/resources/serviceAccountKey.json
Navigate to the backend directory:
cd HealthDex/PHMS-BackendCreate a file named .env in the PHMS-Backend directory with:
GMAIL_EMAIL=your_gmail_address@gmail.com
GMAIL_APP_PASSWORD=your_16_digit_app_password- Go to Google Account Security.
- Enable 2-Step Verification.
- Under Signing in to Google, click App passwords.
- Select Mail as the app.
- Choose Other (Custom name) and enter
PHMS Backend. - Click Generate and copy the 16-character password (no spaces) into your
.env.
# macOS/Linux
./gradlew run
# Windows
gradlew.bat runThe server starts on http://0.0.0.0:8085 by default.
- Open Android Studio and select Open an existing project.
- Navigate to
HealthDex/PHMS-Androidand open it.
In the PHMS-Android root (alongside build.gradle.kts), create local.properties:
# API Keys
openai.api.key=YOUR_OPENAI_API_KEY
FDC_API_KEY=YOUR_FDC_API_KEY
# SDK location (auto-added by Android Studio)
sdk.dir=/path/to/android/sdkNote: Features depending on OpenAI or FDC keys will not work without valid entries.
- Sync Gradle.
- Select an emulator or connected device.
- Click Run 'app' (green
▶️ ) in the toolbar.
HealthDex includes multi-language support via LibreTranslate. Follow these steps to run it locally:
- Clone LibreTranslate:
git clone https://github.com/LibreTranslate/LibreTranslate.git cd LibreTranslate - Run via Docker (recommended):
docker-compose up -d
- API Endpoint
By default, LibreTranslate runs athttp://localhost:5000.
HealthDex will call this endpoint for translation services.
For more details, visit the LibreTranslate GitHub repo.
To test fingerprint login on an Android Virtual Device (AVD):
- Launch your AVD.
- In the emulator, go to Settings > Security > Fingerprint, and add a fingerprint.
- When the app prompts for a fingerprint, open Extended Controls (
⋯), select Fingerprint, and tap Touch sensor to simulate.
# Start the backend server
cd HealthDex/PHMS-Backend
./gradlew run
# In a new terminal, start LibreTranslate (if using locally)
cd HealthDex/Supporting/Language Translator/LibreTranslate
docker-compose up -d
# In Android Studio, open and run the Android app- Register/log in via Firebase; biometric login and multi-language translation will now work.
- Begin tracking vital signs and managing your health data in your preferred language.
- Vikash Mall
- Prajit Viswanadha
- Ved Dharmatti
- Daksh Khuttan
This project is licensed under the terms in LICENSE.md. Please review for details.