/Movie-Alchemy

A movie recommendation system.

Primary LanguageJupyter NotebookMIT LicenseMIT

Overview

Welcome to Movie Alchemy, a Movie Recommendation System. It provides personalized movie suggestions based on the TMDB dataset and is powered by Python and Streamlit. It is a project completed in the fourth semester of my Software Engineering degree. Explore genres, get recommendations, and immerse yourself in the magic of Movie Alchemy!

Technology Used

1. Python

  • Recommendation Logic

2. Streamlit

  • Frontend Technology + API Integration

3. Jupyter Notebook

4. Dataset

  • Our project is enriched with data from Kaggle's "TMDB 5000 Movie Dataset," sourced from The Movie Database (TMDb). Following a DMCA takedown request regarding the original IMDB-based dataset, Kaggle replaced it with this comparable dataset from TMDb, ensuring compliance with terms of use. This dataset provides extensive information about plot, cast, crew, budget, revenues, and more for thousands of films, including full credits for both cast and crew.

Project Outputs

  • Homepage : CHEESE!

    • Image showcasing the homepage of the Movie Recommendation Alchemy app.
  • Genre Selection :

    • Image representing the genre selection process in the app. CHEESE!
  • Final Recommendation : CHEESE!

    • Image displaying the final movie recommendation provided by Movie Alchemy.

Setup and Requirements

  1. Ensure you have Python installed on your system.
  2. Clone this repository to your local machine.
  3. Create a virtual environment for the project.
    python -m venv venv
  4. Activate the virtual environment.
    • On Windows:
    .\venv\Scripts\activate
    • On macOS and Linux:
    source venv/bin/activate
  5. Install the required packages using the provided requirements.txt.
    pip install -r requirements.txt
  6. Run the Streamlit app.
    streamlit run main.py
  7. Open your web browser and navigate to the provided local address to explore Movie Alchemy.

Jupyter Notebook Setup

  1. Open the Jupyter Notebook using the following command:
    jupyter notebook Movie-Alchemy.ipynb
  2. Run the notebook cells to execute the recommendation logic and generate the necessary outputs.
  3. Save the trained model as a Pickle (pkl) file for later use in the Streamlit app.

Collaborators

Contribution

Feel free to fork this repository, make modifications, and contribute to the enhancement of Movie Alchemy. Your contributions are valuable in making this project even better!

Happy exploring!