Movie recommender

A web app to recommend movies based on user input
Collage of movie covers

This recommender system uses two different models to determine the recommendations: Nearest Neighbors and Non-negative Matrix Factorization (can be selected). The models are trained on a reduced data set of movie ratings.

There are two methods available to get recommendations:

  • By favorite movies: Select as many movies you like and get a recommendation for similar movies.
  • By rating: Rate up to 10 arbitrarily selected movies and get a recommendation based on your rating.

This App was a weekly project at the SPICED Datascience Bootcamp from April to June 2023.

The code has been published on GitHub:

Try the App

The app is automatically deployed to using GitHub actions. It runs at, but might be slow or sometimes not available.

To use the Streamlit app, clone the repository, install the requirements to your Python environment and run the app:

git clone
cd movie_recommender/
pip install -r requirements.txt
streamlit run

This should open a page in your default browser at http://localhost:8501 that shows the app.