How yusramuzaibp/nexusquartz works
This is a Streamlit patient-facing app for diabetes, heart-disease, and Parkinson’s risk predictions, with accounts, saved prediction history, a dashboard, specialist-finding navigation, and a health assistant. The principal workflow is patient input → range checks → disease-specific model inference → displayed result and saved record; users can later review or export prior records. The main app excerpt is partial, so some page wiring and specialist-search implementation are not shown; the graph includes only supported connections and leaves those details within the app node.
Main entry points: multiple_disease_pred1.py Streamlit app · chatbot_snippet.py Assistant page · authentication.py Authentication · database.py Prediction records API
Components 13
Patient workflow
- Streamlit app
multiple_disease_pred1.py - Activity dashboard
dashboard.py
Risk prediction
- Range checks
utils/validation.py - Diabetes model
saved_models/diabetes_model.sav - Heart model
saved_models/heart_disease_model.sav - Parkinson’s model
saved_models/parkinsons_model.sav
Accounts and records
- Authentication
auth/authentication.py - Prediction records API
database/database.py - SQLite records
users.db
Health assistant
- Assistant page
chatbot_snippet.py - Keyword replies
chatbot_snippet.py
Other components
- Patient
- Gemini API
Connections 12
- Patient → Streamlit app: enters input
- Streamlit app → Range checks: checks ranges
- Streamlit app → Diabetes model: loads and predicts
- Streamlit app → Heart model: loads and predicts
- Streamlit app → Parkinson’s model: loads and predicts
- Streamlit app → Authentication: authenticates
- Authentication → SQLite records: reads and writes users
- Streamlit app → Prediction records API: saves and retrieves history
- Prediction records API → SQLite records: reads and writes predictions
- Streamlit app → Assistant page: renders assistant
- Assistant page → Keyword replies: requests fallback reply
- Assistant page → Gemini API: requests generated reply