A content-based Movie Recommendation System built using Machine Learning, FastAPI, and React (Vite).
The system suggests similar movies based on user selection and displays posters using TMDB API.
- Search movies with autocomplete
- Get top 5 similar movie recommendations
- Fetch movie posters using TMDB API
- FastAPI backend
- React frontend
- Pickle-based ML model
- Python
- FastAPI
- Pandas
- Scikit-learn
- Pickle
- Requests
- React (Vite)
- JavaScript
- HTML
- CSS
movie-recommender-system
├── app.py
├── movie.pkl
├── recommendation.pkl
├── movie-frontend
│ ├── src
│ └── ...
├── myenv
└── README.md
Create virtual environment:
python -m venv myenv
Activate:
myenv\Scripts\activate
Install dependencies:
pip install fastapi uvicorn pandas scikit-learn requests
Run server:
uvicorn app:app --reload
Server runs at:
cd movie-frontend
npm install
npm run dev
Open browser:
Get movie list:
GET /movie_list
Get recommendations:
GET /movies_recommended/{movie_name}
- Deploy on cloud
- Better UI
- User authentication
- Collaborative filtering
- Genre-based filtering
Harshit
⭐ If you like this project, consider giving it a star!