How srinath-13/cinemaos-tmdb-project works
Cinemaos is a React movie-discovery and recommendation app. Users authenticate, explore or search TMDB’s movie catalog, inspect movie details and credits, and generate recommendations based on recorded searches, genres, cast, crew, runtime, release year, and movie interactions. The sampled code shows screen routing, catalog requests, and Firestore behavior writes; recommendation assembly internals were not sampled, so that branch is represented without guessed call links.
Main entry points: Row.js Movie rows · App.js App routing · HomeScreen.js Home screen · search.js Search and filters
Components 21
App experience
- App routing
src/App.js - Home screen
src/screens/HomeScreen.js - Navigation and banner
src/Nav.js
Movie discovery
- Collection explorer
src/screens/Explorer.js - Search and filters
src/search.js - Movie rows
src/Row.js - TMDB API client
src/axios.js - Request catalog
src/requests.js - Movie details
src/Display.js - Cast and genres
src/Cast.js - Movie sorting
src/Sorter.js
Recommendations
- Recommendation view
src/Recommender.js - Recommendation assembly
src/Assembler.js
Identity and behavior
- Login screen
src/screens/LoginScreen.js - Signup screen
src/screens/SignupScreen.js - Profile screen
src/screens/ProfileScreen.js - User behavior state
src/features/userSlice.js - Firebase auth
src/firebase.js - Firestore behavior data
src/firebase.js
Other components
- Viewer
- TMDB
Connections 29
- Viewer → App routing: opens app
- App routing → Home screen: routes to
src/App.js - App routing → Login screen: routes to
src/App.js - App routing → Profile screen: routes to
src/App.js - App routing → Firebase auth: checks auth
src/App.js - App routing → User behavior state: dispatches auth
src/App.js - Login screen → Signup screen: links to
src/screens/LoginScreen.js - Signup screen → Firebase auth: creates account
src/screens/SignupScreen.js - Profile screen → Firebase auth: signs out
src/screens/ProfileScreen.js - Home screen → Navigation and banner: renders
src/screens/HomeScreen.js - Home screen → Collection explorer: shows collections
src/screens/HomeScreen.js - Home screen → Recommendation view: shows recommendations
src/screens/HomeScreen.js - Collection explorer → Search and filters: renders search
src/screens/Explorer.js - Collection explorer → Movie rows: renders collections
src/screens/Explorer.js - Search and filters → Movie rows: renders results
src/search.js - Search and filters → Request catalog: builds requests
src/search.js - Movie rows → TMDB API client: fetches results
src/Row.js - Movie rows → Request catalog: uses endpoints
src/Row.js - TMDB API client → TMDB: requests catalog
- Movie rows → Cast and genres: renders credits
src/Row.js - Movie rows → Firestore behavior data: records interactions
src/Row.js - Movie rows → User behavior state: reads user
src/Row.js - Movie details → Firestore behavior data: records movie signals
src/Display.js - Movie details → User behavior state: reads user
src/Display.js - Home screen → Firestore behavior data: loads preferences
src/screens/HomeScreen.js - Search and filters → Firestore behavior data: records genres
src/search.js - Recommendation view → Recommendation assembly: uses assembly
src/Recommender.js - Recommendation view → Movie details: renders results
src/Recommender.js - Recommendation view → Navigation and banner: renders navigation
src/Recommender.js