CineMatch is a content-based Movie Recommender System project in Python that suggests similar films from a catalogue of nearly 4,800 titles. Built with Python, Flask, pandas, scikit-learn and NLTK, it matches movies by story, genre, cast, themes and production studio using cosine similarity. Key features include five separate recommendation engines, rich movie details with rating, runtime, budget and cast, a modern dark-themed custom UI with live search, fully offline operation with no external APIs, smart pickle-based caching for fast startup, and a clean Flask JSON API. Ideal for BCA, MCA, B.Tech and M.Tech final year students. Includes source code, report, synopsis and PPT.
The Movie Recommender System Project in Python (CineMatch) is a complete machine learning and web development package built for final year submissions. It analyses a catalogue of nearly 4,800 movies and recommends the closest matches to any title you select, using content-based filtering rather than simple popularity lists. The application combines a Flask backend, a custom single-page frontend, and a full content-based recommendation pipeline. Everything runs locally on your machine with no API keys and no internet dependency.
| Component | Technology |
| Backend | Python, Flask |
| Machine Learning | pandas, scikit-learn, NLTK |
| Vectorization | CountVectorizer |
| Similarity Logic | Cosine Similarity |
| Frontend | HTML, CSS, JavaScript |
| Dataset | TMDB 5000 Movies and Credits CSV |
| Caching | Pickle files |
| Platform | Web application, runs locally on any OS |
The two TMDB CSV files are merged and cleaned, pulling together overview, genres, keywords, cast, crew, and studio details for each movie. Each film is then converted into a bag of words, with stemming applied and stop words removed, and the content is grouped into five separate feature sets. CountVectorizer turns these tags into numeric vectors, and cosine similarity scores every movie against every other movie in the catalogue. When you pick a title, the results are sorted by similarity score and the top unique matches from all five engines are displayed instantly on screen.
This project suits BCA, MCA, B.Tech CS/IT, M.Tech, and MBA students who need a final year project that covers both machine learning and full-stack web development. It is well suited for viva presentations because vectorization, cosine similarity, and content-based filtering are common examiner questions that you can answer with a live demo. It also works as a strong portfolio and interview project, since recommender systems power platforms like Netflix, Amazon, and Spotify.
The project can be extended with real movie posters from a bundled image pack, collaborative filtering that blends user ratings with content matches, user accounts with watchlists and a personalised feed, filters for release year, language and minimum rating, cloud deployment for online access, a feedback loop where users rate recommendations, and an expanded dataset with newer titles.
Watch the full project walkthrough and setup tutorial on our YouTube channel.
▶ Watch on YouTube – Decode It
For complete project details, source code, and setup guide, visit the official project page.
1. Download and extract the ZIP file 2. Open the project folder: cd Movie-Recommender-System 3. Create a virtual environment: python -m venv venv Windows: venv\Scripts\activate macOS / Linux: source venv/bin/activate 4. Install dependencies: pip install -r requirements.txt 5. Run the app: python app.py 6. Open http://127.0.0.1:5000 in your browser (First run takes longer while similarity matrices are built and cached)
FAQ for this project coming soon.
No reviews yet. Be the first to review!