A hybrid movie recommendation system that suggests movies based on:
🎥 A movie you like 😊 Your current mood It combines content-based filtering with mood-based genre filtering and fetches real-time movie details using the TMDB API.
https://mood-aware-hybrid-movie-recommendation-system-7cgsj8nqkbp8gaec.streamlit.app/
This project improves recommendation quality by integrating mood-based filtering with content-based similarity to deliver more personalized and context-aware recommendations.
This project combines:
- CountVectorizer
- Cosine Similarity
- Each mood mapped to specific genres
- Recommendations filtered based on mood
- Fetches movie posters
- Ratings
- Release year
- Overview
- CountVectorizer for text vectorization
- Cosine Similarity for content-based filtering
- Genre-to-Mood mapping logic
- API integration using Requests
- Python
- Streamlit
- Pandas
- Scikit-learn
- TMDB API
- Requests
Mood-Aware-Hybrid-Movie-Recommendation-System/
│
├── app.py
├── movies_dict.pkl
├── requirements.txt
├── README.md
│
└── .streamlit/
└── secrets.toml
##⚙️ Installation & Setup
git clone https://github.com/Ankita7977/Mood-Aware-Hybrid-Movie-Recommendation-System.gitcd Mood-Aware-Hybrid-Movie-Recommendation-Systempip install -r requirements.txtstreamlit run app.pyThis project requires a TMDB API key.
Create a .streamlit/secrets.toml file and add:
TMDB_API_KEY = "your_api_key_here"- User selects a movie.
- System finds similar movies using cosine similarity.
- Filters results based on selected mood.
- Fetches movie details using TMDB API.
- Displays top recommendations with posters and ratings.
- 🎥 Movie-based recommendations
- 😊 Mood-based filtering (Happy, Sad, Excited, etc.)
- ⭐ Displays movie ratings
- 📅 Shows release year
- 🖼 Displays movie posters
- 📖 Shows movie overview
- ⚡ Fast and interactive user interface built with Streamlit
- Hybrid recommendation approach
- Mood-aware personalization
- Real-time API integration
- Clean and responsive UI
- Add user authentication system
- Implement collaborative filtering
- Add user rating-based learning
- Improve UI/UX design
- Docker deployment
- Mobile responsive layout
Ankita Prajapati
Aspiring Data Scientist | Machine Learning Enthusiast


