How gyeongrimnam/dr.sanjini works
Dr. Sanjini is an Android healthcare app for managing personal health information and finding nearby care. Its documented workflow spans onboarding and health records, symptom analysis, local care discovery, and ongoing medication and appointment management. The tree identifies corresponding screens, ViewModels, repositories, API services, and Room database code, but the sampled source contains no runtime implementation; edges therefore reflect only README-documented behavior and omit uncertain internal wiring.
Main entry points: MapFragment.kt Nearby care map · HomeActivity.kt Home navigation · AppDatabase.kt Local health database · HospitalService.kt Hospital services
Components 21
App screens
- Home navigation
app/src/main/java/com/example/myapplication/home/HomeActivity.kt - Health overview
app/src/main/java/com/example/myapplication/home/HomeFragment.kt - Health onboarding
app/src/main/java/com/example/myapplication/onboarding - Profile screen
app/src/main/java/com/example/myapplication/mypage/MyPageFragment.kt - Health calendar
app/src/main/java/com/example/myapplication/calendar/CalendarFragment.kt - Symptom chatbot
app/src/main/java/com/example/myapplication/chatbot/ChatBotFragment.kt - Nearby care map
app/src/main/java/com/example/myapplication/map/MapFragment.kt - Emergency screen
app/src/main/java/com/example/myapplication/emergency/EmergencyFragment.kt
Health records
- Medication state
app/src/main/java/com/example/myapplication/ViewModel/PillViewModel.kt - Local health database
app/src/main/java/com/example/myapplication/data/AppDatabase.kt - Data repositories
app/src/main/java/com/example/myapplication/data/repository
Care discovery
- Map state
app/src/main/java/com/example/myapplication/ViewModel/MapViewModel.kt
External services
- API client
app/src/main/java/com/example/myapplication/api/retrofit/RetrofitClient.kt - Hospital services
app/src/main/java/com/example/myapplication/api/service/HospitalService.kt - Emergency services
app/src/main/java/com/example/myapplication/api/service/EmergencyService.kt - Pharmacy services
app/src/main/java/com/example/myapplication/api/service/PharmacyService.kt - AI service
app/src/main/java/com/example/myapplication/api/service/GeminiService.kt - Care information APIs
- AI symptom analysis
- Map and location
Other components
- App user
Connections 28
- App user → Home navigation: opens app
- Home navigation → Health overview: shows default
- Home navigation → Health calendar: navigates
- Home navigation → Nearby care map: navigates
- App user → Health onboarding: registers health
- App user → Profile screen: manages profile
- App user → Symptom chatbot: enters symptoms
- Symptom chatbot → AI symptom analysis: requests analysis
- AI service → AI symptom analysis: provides AI
- App user → Nearby care map: searches nearby
- Nearby care map → Map and location: uses location
- Nearby care map → Hospital services: searches hospitals
- Nearby care map → Emergency services: searches emergency care
- Nearby care map → Pharmacy services: searches pharmacies
- Hospital services → API client: uses client
- Emergency services → API client: uses client
- Pharmacy services → API client: uses client
- Hospital services → Care information APIs: queries
- Emergency services → Care information APIs: queries
- Pharmacy services → Care information APIs: queries
- App user → Health calendar: manages appointments
- App user → Medication state: manages medication
- Health calendar → Medication state: tracks schedules
- Medication state → Local health database: stores records
- Health onboarding → Local health database: stores health data
- Profile screen → Local health database: manages profile data
- Local health database → Data repositories: persists records
- Nearby care map → Map state: manages map state