How leoallvez/overview works
Overview is an Android app for discovering movies and TV across streaming services, searching and filtering results, inspecting details, and keeping favorites. The user flow enters through Compose navigation and screens, then uses presentation/domain/data layers to retrieve or persist content. The tree and README establish capabilities, while sampled sources confirm TMDB endpoints, paging/search behavior, Room storage, and navigation. Several screen-to-use-case connections are inferred only from module organization, so uncertain call edges are omitted.
Main entry points: NavController.kt Compose navigation · repository Media repositories · search Cross-platform search · home Home discovery
Components 21
App experience
- Compose navigation
app/src/main/java/br/dev/singular/overview/ui/navigation/NavController.kt - Home discovery
app/src/main/java/br/dev/singular/overview/ui/home - Cross-platform search
app/src/main/java/br/dev/singular/overview/ui/search - Media details
app/src/main/java/br/dev/singular/overview/ui/media - Favorites collection
presentation/src/main/java/br/dev/singular/overview/presentation/ui/screens/favorites - Person details
presentation/src/main/java/br/dev/singular/overview/presentation/ui/screens/person - Streaming selection
presentation/src/main/java/br/dev/singular/overview/presentation/ui/screens/streaming - Trailer player
presentation/src/main/java/br/dev/singular/overview/presentation/ui/screens/video
Discovery domain
- Media operations
domain/src/main/java/br/dev/singular/overview/domain - Person lookup
domain/src/main/java/br/dev/singular/overview/domain/usecase/GetPersonByIdUseCase.kt - Streaming preferences
domain/src/main/java/br/dev/singular/overview/domain/usecase/streaming - Genre filtering
app/src/main/java/br/dev/singular/overview/data/repository/genre
Data access
- Media repositories
data/src/main/java/br/dev/singular/overview/data/repository - Media API access
data/src/main/java/br/dev/singular/overview/data/network/source/MediaRemoteDataSource.kt - Suggestions
domain/src/main/java/br/dev/singular/overview/domain/usecase/suggestion - Suggestion repository
data/src/main/java/br/dev/singular/overview/data/repository/SuggestionRepository.kt - Local data sources
data/src/main/java/br/dev/singular/overview/data/local/source
Platform services
- Room database
app/src/main/java/br/dev/singular/overview/data/db/AppDatabase.kt
Other components
- App user
- TMDB API
- Firebase Analytics
Connections 23
- App user → Compose navigation: opens
- Compose navigation → Home discovery: routes
- Compose navigation → Cross-platform search: routes
- Compose navigation → Media details: routes
- Compose navigation → Favorites collection: routes
- Compose navigation → Person details: routes
- Compose navigation → Streaming selection: routes
- Compose navigation → Trailer player: routes
- Cross-platform search → Media repositories: requests pages
- Home discovery → Media repositories: browses media
- Media details → Media repositories: loads details
- Favorites collection → Media operations: manages favorites
- Person details → Person lookup: loads person
- Streaming selection → Streaming preferences: saves selection
- Media repositories → Media API access: requests media
- Media API access → TMDB API: fetches content
- Media operations → Media repositories: uses repositories
- Cross-platform search → Suggestions: searches suggestions
- Suggestions → Suggestion repository: loads suggestions
- Suggestion repository → Local data sources: reads and writes
- Local data sources → Room database: persists data
- Genre filtering → Room database: stores genres
- App user → Firebase Analytics: generates events