How husnaqayyum99-byte/app works
Apna Wakeel appears to be an Android legal-assistance app: users can browse legal topics and sources, describe a case, receive follow-up questions and analysis, and view a legal plan; separate screens support chat, voice, and case history. The tree also indicates agent-based legal processing, local case/topic data, and Firebase/Gemini integrations. The README is empty and the supplied source excerpts contain only build configuration, so internal wiring and workflow edges cannot be verified and are omitted.
Main entry points: FirebaseAuthService.kt Firebase auth · FirestoreSyncService.kt Cloud sync · FirebaseAIChatService.kt Firebase AI chat · GeminiLegalService.kt Gemini legal service
Components 34
App experience
- Android entry
app/src/main/java/com/example/MainActivity.kt - Navigation state
app/src/main/java/com/example/ui/viewmodel/LegalNavViewModel.kt - Home
app/src/main/java/com/example/ui/screens/HomeScreen.kt - Case intake
app/src/main/java/com/example/ui/screens/CaseIntakeScreen.kt - Follow-up questions
app/src/main/java/com/example/ui/screens/FollowUpQuestionsScreen.kt - Case analysis
app/src/main/java/com/example/ui/screens/AnalyzingScreen.kt - Plan result
app/src/main/java/com/example/ui/screens/LegalPlanResultScreen.kt - Case history
app/src/main/java/com/example/ui/screens/CaseHistoryScreen.kt - Legal topics
app/src/main/java/com/example/ui/screens/LegalTopicsScreen.kt - Sources directory
app/src/main/java/com/example/ui/screens/SourcesDirectoryScreen.kt - Legal chat
app/src/main/java/com/example/ui/screens/LegalChatScreen.kt - Voice conversation
app/src/main/java/com/example/ui/screens/VoiceConversationScreen.kt
Legal assistance
- Case orchestration
app/src/main/java/com/example/data/agents/OrchestrationAgent.kt - Intake agent
app/src/main/java/com/example/data/agents/IntakeAgent.kt - Specialist agents
app/src/main/java/com/example/data/agents/SpecialistAgents.kt - Verification
app/src/main/java/com/example/data/agents/VerificationEngine.kt - Plan builder
app/src/main/java/com/example/data/agents/LegalPlanBuilder.kt - Sources registry
app/src/main/java/com/example/data/sources/LegalSourcesRegistry.kt
Case and legal data
- Case models
app/src/main/java/com/example/data/models/CaseModels.kt - Case access
app/src/main/java/com/example/data/local/CaseDao.kt - Local case database
app/src/main/java/com/example/data/local/AppDatabase.kt - Topic repository
app/src/main/java/com/example/data/local/LegalTopicRepository.kt - Topic access
app/src/main/java/com/example/data/local/LegalTopicDao.kt - Topic data
app/src/main/java/com/example/data/local/LegalTopicEntity.kt
Platform services
- Firebase auth
app/src/main/java/com/example/data/auth/FirebaseAuthService.kt - Cloud sync
app/src/main/java/com/example/data/cloud/FirestoreSyncService.kt - Firebase AI chat
app/src/main/java/com/example/data/ai/FirebaseAIChatService.kt - Gemini legal service
app/src/main/java/com/example/data/ai/GeminiLegalService.kt - Gemini live voice
app/src/main/java/com/example/data/ai/GeminiLiveVoiceService.kt - Gemini transcription
app/src/main/java/com/example/data/ai/GeminiTranscriptionService.kt - Audio recording
app/src/main/java/com/example/data/audio/AudioRecordingManager.kt
Other components
- User
- Firebase
- Gemini services
Connections 6
- Firebase auth → Firebase: uses
- Cloud sync → Firebase: syncs with
- Firebase AI chat → Firebase: uses
- Gemini legal service → Gemini services: uses
- Gemini live voice → Gemini services: uses
- Gemini transcription → Gemini services: uses