MovieMate is a dynamic web application that provides tailored movie recommendations based on user preferences. The app leverages the powerful TMDb API to fetch data on movies, including top-rated films, genres, and detailed information for recommendations.
- Top-Rated Movies: View a list of top-rated movies with posters and ratings.
- Personalized Recommendations: Select favorite movies and set preferences such as genres, ratings, release years, and more to get customized movie recommendations.
- Advanced Filters: Narrow down recommendations by runtime, language, popularity, actor, and director.
- Responsive Design: Fully optimized for mobile and desktop viewing.
The app is live and accessible at: MovieMate
This project utilizes the TMDb API for movie data. Note: This product uses the TMDb API but is not endorsed or certified by TMDb.
- Top-Rated Movies: Data fetched from
/movie/top_rated
endpoint. - Genres: Data fetched from
/genre/movie/list
endpoint. - Discover Movies: Customized movie searches using the
/discover/movie
endpoint with advanced filtering options.
- Frontend:
- HTML5, CSS3 (Responsive styling with custom themes).
- JavaScript for dynamic interaction.
- Backend:
- Python with Flask framework for API integration and server-side logic.
python-dotenv
for secure API key management.
- Hosting:
- Deployed on Vercel for fast and reliable hosting.
To run this project locally:
-
Clone the repository:
git clone https://github.com/afsanab/moviemate.git cd moviemate
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
- Create a
.env
file in the project root. - Add the following line:
TMDB_API_KEY=your_api_key_here
- Create a
-
Run the app:
python main.py
The app will run locally at
http://127.0.0.1:5000/
.
This project is developed by Afsana Bhuiyan and Nadia Choudhury and leverages the TMDb API for data.