How ngoquangphuc29306/webflim works
PHEVO is a movie-discovery and streaming product with a web experience and a separate Android TV client. The main web journey spans discovery/search, movie detail, and playback; account features preserve watchlist, history, progress, and player preferences, with local/cloud synchronization. The sampled API routes call the shared movie API, and the sync engine coordinates local state with cloud gateways. The tree also documents taxonomy, recommendations, and TV playback, but their internal wiring is not fully shown in the excerpts; those uncertain links are omitted.
Main entry points: movies.ts Movie API · sync-engine.ts Cloud sync engine · MainActivity.kt TV app · VsmovMovieRepository.kt TV movie repository
Components 25
Web experience
- Home and discovery
app/page.tsx - Explore and taxonomy
app/kham-pha/page.tsx - Search
app/tim-kiem/page.tsx - Movie detail
app/phim/[slug]/page.tsx - Movie playback
app/xem-phim/[slug]/page.tsx - Watchlist
app/yeu-thich/page.tsx - Viewing history
app/lich-su/page.tsx
Catalog services
- Movie API
lib/api/movies.ts - Search suggestions
app/api/search/suggestions/route.ts - Movie detail API
app/api/movies/[slug]/route.ts - Taxonomy APIs
app/api/taxonomy/countries/route.ts - Movie provider
lib/api/providers/movie-provider.ts - TMDB integration
lib/tmdb/client.ts
User state
- Local persistence
lib/persistence/storage.ts - History persistence
lib/persistence/history/history.service.ts - Watchlist persistence
lib/persistence/watchlist/watchlist.service.ts - Playback progress
lib/persistence/progress/progress.service.ts - Player preferences
lib/persistence/player-preferences/preferences.service.ts - Cloud sync engine
lib/sync/sync-engine.ts - Cloud data gateways
lib/cloud/watchlist-gateway.ts
Android TV
- TV app
android-tv/app/src/main/java/com/phevo/tv/MainActivity.kt - TV movie repository
android-tv/app/src/main/java/com/phevo/tv/data/repository/VsmovMovieRepository.kt - TV playback controller
android-tv/app/src/main/java/com/phevo/tv/ui/player/Media3PlaybackController.kt
Other components
- Viewer
- VSMov service
Connections 17
- Viewer → Home and discovery: opens
- Viewer → Explore and taxonomy: browses
- Viewer → Search: searches
- Viewer → Movie detail: views
- Viewer → Movie playback: watches
- Viewer → Watchlist: manages
- Viewer → Viewing history: reviews
- Search suggestions → Movie API: searches
- Movie detail API → Movie API: fetches details
- Taxonomy APIs → Movie API: fetches taxonomy
- Movie API → Movie provider
- Movie API → TMDB integration
- Cloud sync engine → Local persistence: reads and writes
- Cloud sync engine → Cloud data gateways: syncs with
- TV app → TV movie repository
- TV app → TV playback controller
- TV movie repository → VSMov service