How maheswar-sah00/goldenhour works
GoldenHour is an offline Android stroke-screening aid for families: setup and measured face, speech, and arm checks lead to a fixed-rule warning decision, saved check history, and help-seeking alerts. The README documents the principal orchestration and major capabilities; source excerpts confirm representative sensor, storage, and location behavior. Some screen, repository, and alert wiring is therefore represented at documented subsystem level rather than inferred from unsampled implementations.
Main entry points: CheckFlowViewModel.kt Check Flow · GoldenHourRoot.kt Navigation Root · Repositories.kt Repositories · CheckModule.kt Check Module
Components 26
App Entry
- Main Activity
app/src/main/java/com/goldenhour/app/MainActivity.kt
User Experience
- Navigation Root
app/src/main/java/com/goldenhour/app/ui/navigation/GoldenHourRoot.kt - Setup & Contacts
app/src/main/java/com/goldenhour/app/ui/screens - Home & History
app/src/main/java/com/goldenhour/app/ui/screens - Check Screens
app/src/main/java/com/goldenhour/app/ui/screens/check - Alert & Result
app/src/main/java/com/goldenhour/app/ui/screens/alert - Baseline Screens
app/src/main/java/com/goldenhour/app/ui/screens/baseline
Screening
- Check Flow
app/src/main/java/com/goldenhour/app/ui/screens/check/CheckFlowViewModel.kt - Baseline Flow
app/src/main/java/com/goldenhour/app/ui/screens/baseline/BaselineViewModel.kt - Check Module
app/src/main/java/com/goldenhour/app/checks/CheckModule.kt - Smile Measurement
app/src/main/java/com/goldenhour/app/checks/face/FaceCheck.kt - Speech Measurement
app/src/main/java/com/goldenhour/app/checks/speech/SpeechCheck.kt - Arm Measurement
app/src/main/java/com/goldenhour/app/checks/arm/ArmCheck.kt
Decision Domain
- Rules & Decision
app/src/main/java/com/goldenhour/app/domain/Decide.kt - Test Mathematics
app/src/main/java/com/goldenhour/app/domain - Session Models
app/src/main/java/com/goldenhour/app/domain/Session.kt
Local State
- Repositories
app/src/main/java/com/goldenhour/app/data/Repositories.kt - JSON Store
app/src/main/java/com/goldenhour/app/data/JsonStore.kt
Emergency Response
- Location Finder
app/src/main/java/com/goldenhour/app/alerts/LocationFinder.kt - Emergency Caller
app/src/main/java/com/goldenhour/app/alerts/EmergencyCaller.kt - Family Alerter
app/src/main/java/com/goldenhour/app/alerts/FamilyAlerter.kt
Other components
- Family Helper
- Phone Dialer
- SMS / WhatsApp
- Device Location
- Phone Sensors
Connections 32
- Family Helper → Main Activity: opens app
- Main Activity → Navigation Root: shows root
- Navigation Root → Setup & Contacts: routes setup
- Navigation Root → Home & History: routes home
- Navigation Root → Check Screens: routes check
- Navigation Root → Alert & Result: routes outcome
- Navigation Root → Baseline Screens: routes baseline
- Check Screens → Check Flow: sends actions
- Baseline Screens → Baseline Flow: sends actions
- Check Flow → Check Module: runs checks
- Check Module → Smile Measurement: dispatches face
- Check Module → Speech Measurement: dispatches speech
- Check Module → Arm Measurement: dispatches arm
- Smile Measurement → Test Mathematics: measures features
- Speech Measurement → Test Mathematics: measures speech
- Arm Measurement → Test Mathematics: measures motion
- Arm Measurement → Phone Sensors: reads motion
- Check Flow → Rules & Decision: decides once
- Rules & Decision → Session Models: returns verdict
- Check Flow → Repositories: creates and saves
- Baseline Flow → Repositories: saves baseline
- Home & History → Repositories: loads records
- Setup & Contacts → Repositories: saves profile
- Repositories → JSON Store: reads and writes
- Check Flow → Location Finder: finds location
- Location Finder → Device Location: requests fixes
- Location Finder → Repositories: stores last fix
- Check Flow → Emergency Caller: starts call
- Check Flow → Family Alerter: dispatches alert
- Emergency Caller → Phone Dialer: opens dialer
- Family Alerter → SMS / WhatsApp: sends messages
- Alert & Result → Check Flow: triggers alert action