How mohithvkrishnam/jalsanchaytracker works
Jal-Sanchay Tracker is an Android water-conservation app: users track rainfall, estimate and visualize stored water, review conservation statistics, and access weather insights and AI suggestions. The tree identifies UI screens, viewmodels, repositories, local persistence, and remote-service modules; README documents the broader capabilities. Source excerpts do not show runtime wiring, so uncertain calls between these layers are omitted.
Main entry points: MainActivity.kt Activity entry
Components 22
App and navigation
- Activity entry
app/src/main/java/com/example/jalsanchaytracker/MainActivity.kt - Screen navigation
app/src/main/java/com/example/jalsanchaytracker/ui/navigation/Screen.kt - Login and registration
app/src/main/java/com/example/jalsanchaytracker/ui/screens/LoginScreen.kt - Authentication state
app/src/main/java/com/example/jalsanchaytracker/viewmodel/AuthViewModel.kt
Water tracking
- Dashboard and analytics
app/src/main/java/com/example/jalsanchaytracker/ui/screens/DashboardScreen.kt - Rainfall entry
app/src/main/java/com/example/jalsanchaytracker/ui/screens/RainfallEntryScreen.kt - Tracking history
app/src/main/java/com/example/jalsanchaytracker/ui/screens/HistoryScreen.kt - Monthly reports
app/src/main/java/com/example/jalsanchaytracker/ui/screens/ReportsScreen.kt - Water calculations
app/src/main/java/com/example/jalsanchaytracker/utils/WaterCalculationUtils.kt - Tracking state
app/src/main/java/com/example/jalsanchaytracker/viewmodel/MainViewModel.kt
Insights and advice
- Weather insights
app/src/main/java/com/example/jalsanchaytracker/data/repository/WeatherRepository.kt - AI conservation chat
app/src/main/java/com/example/jalsanchaytracker/ui/screens/ChatbotScreen.kt - Chat state
app/src/main/java/com/example/jalsanchaytracker/viewmodel/ChatViewModel.kt - Conservation tips
app/src/main/java/com/example/jalsanchaytracker/ui/screens/TipsScreens.kt - Tips state
app/src/main/java/com/example/jalsanchaytracker/viewmodel/TipsViewModel.kt
Data services
- Authentication service
app/src/main/java/com/example/jalsanchaytracker/data/repository/AuthRepository.kt - Water data repository
app/src/main/java/com/example/jalsanchaytracker/data/repository/JalSanchayRepository.kt - Local database
app/src/main/java/com/example/jalsanchaytracker/data/local/AppDatabase.kt - Weather API
app/src/main/java/com/example/jalsanchaytracker/data/remote/WeatherApiService.kt - AI chat repository
app/src/main/java/com/example/jalsanchaytracker/data/repository/ChatRepository.kt - Gemini service
app/src/main/java/com/example/jalsanchaytracker/data/remote/GeminiApiService.kt
Other components
- App user
Connections 1
- App user → Activity entry: opens app