NextWatch AI is an intelligent movie recommendation system that leverages machine learning and rich movie metadata to suggest films tailored to user preferences. Powered by the TMDB 5000 dataset, this project uses Python and Jupyter Notebook to analyze movie content and generate personalized recommendations.
- Content-based movie recommendations using metadata and credits
- Utilizes the TMDB 5000 Movies and Credits datasets for robust data
- Interactive interface for querying and displaying recommendations
- Implemented with Python, Jupyter Notebook, and optionally Flask/Streamlit
- Deployment-ready with
Procfileand setup scripts for easy cloud deployment
nextwatch-ai/
│
├── .idea/ # IDE configuration files
├── .ipynb_checkpoints/ # Jupyter notebook checkpoints
├── MovieRecommendation.ipynb # Core notebook for recommendation logic
├── app.py # Application entry point (Flask or Streamlit)
├── requirements.txt # Python dependencies
├── setup.sh # Setup script for deployment environments
├── Procfile # Configuration file for Heroku deployment
├── tmdb_5000_movies.csv # Movie metadata dataset
├── tmdb_5000_credits.csv # Movie credits dataset
├── .gitignore # Git ignore rules
└── .gitattributes # Git attributes configuration
- Python 3.7 or higher
- Jupyter Notebook (to explore
.ipynbfiles) - pip package manager
-
Clone the repository:
git clone https://github.com/Samridhi060/nextwatch-ai.git cd nextwatch-ai -
Install required packages:
pip install -r requirements.txt
-
(Optional) Run the setup script for deployment environment preparation:
bash setup.sh
-
To explore or modify the recommendation system logic, open and run:
MovieRecommendation.ipynb -
To start the web application (if
app.pyuses Flask or Streamlit):python app.py
-
Access the interactive interface to input movie titles and receive recommendations.
tmdb_5000_movies.csv: Contains detailed metadata on 5000 movies, including genres, keywords, and summaries.tmdb_5000_credits.csv: Includes cast and crew information corresponding to the movies.
- The system combines metadata and credits data to calculate content similarity between movies.
- Upon entering a movie title or user preference, it ranks similar films and returns a curated recommendation list.
- Recommendation logic is primarily implemented in the notebook, supported by backend code in
app.py.
- The
Procfileenables easy deployment on platforms like Heroku. - Use
setup.shto configure environment dependencies during deployment.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new feature branch.
- Submit a pull request with your changes.