How honey-singh716/movie_recommender_ai works
This is a Streamlit movie discovery app: users explore a movie library, find similar films, browse actor filmographies, compare movies, and request mood-based picks. The main entry point loads movie data and models, then dispatches pages; those pages use recommendation logic, shared display/TMDB utilities, and SQLite-backed data. The excerpts directly show several page dispatches and the mood/recommendation calls. Other page wiring and the README-mentioned review sentiment capability are not established by the sampled code, so those links are not inferred.
Main entry points: utils.py Movie and TMDB utilities · main.py App entry and navigation · models.py Model and data loader · recommendations.py Recommendation algorithms
Components 18
Streamlit application
- App entry and navigation
app/main.py - Home page
app/views/home_page.py - About page
app/views/about_page.py
Movie discovery
- Movie information
app/views/movie_info_page.py - Actor filmography
app/views/actor_page.py - Mood recommendations
app/views/mood_page.py - Similar movies
app/views/movie_recommender_page.py - Movie comparison
app/views/movie_battle_page.py
Recommendation and mood logic
- Model and data loader
app/core/models.py - Mood classification
app/core/mood_prediction.py - Recommendation algorithms
app/core/recommendations.py - Text preprocessing
app/core/text_preprocessing.py
Data and integrations
- Movie and TMDB utilities
app/utils/utils.py - SQLite data access
app/utils/db_manager.py - Movie database
data/movies.db - Trained model artifacts
models
Other components
- Movie viewer
- TMDB service
Connections 20
- Movie viewer → App entry and navigation: opens app
README.md - App entry and navigation → Model and data loader: loads data and models
app/main.py - Model and data loader → SQLite data access: loads movies
app/core/models.py - Model and data loader → Text preprocessing: registers cleaner
app/core/models.py - Model and data loader → Trained model artifacts: loads mood model
app/core/models.py - SQLite data access → Movie database: reads and writes
app/utils/db_manager.py - App entry and navigation → Actor filmography: shows page
app/main.py - App entry and navigation → Movie comparison: shows page
app/main.py - App entry and navigation → About page: shows page
app/main.py - Mood recommendations → Mood classification: predicts mood
app/views/mood_page.py - Mood recommendations → Recommendation algorithms: ranks genres
app/views/mood_page.py - Mood recommendations → Movie and TMDB utilities: renders movie cards
app/views/mood_page.py - Similar movies → Recommendation algorithms: finds similar films
app/views/movie_recommender_page.py - Similar movies → Movie and TMDB utilities: renders movie cards
app/views/movie_recommender_page.py - Movie information → Recommendation algorithms: finds similar films
app/views/movie_info_page.py - Movie information → Movie and TMDB utilities: fetches details
app/views/movie_info_page.py - Actor filmography → Recommendation algorithms: finds actor films
app/views/actor_page.py - Actor filmography → Movie and TMDB utilities: fetches actor info
app/views/actor_page.py - Movie comparison → Movie and TMDB utilities: fetches posters
app/views/movie_battle_page.py - Movie and TMDB utilities → TMDB service: requests movie and actor data
app/utils/utils.py