A web application that makes it easy to discover movies similar to others. It displays films on a grid, positioning them closer together or further apart based on how similar they are to each other.
You can try the app with a dataset of 10k movies here.
To generate your own data, you need to supply 2 values in constants.py :
- Your TMDB API key
- The grid size you want.
Generating a dataset is a 3 step process :
movie_list.pycreates a list of GRID_SIZE² movies.movie_details.pyadds details for every movie found.movie_grid.pygenerates a grid based on the movie details.
Run the 3 scripts in order and 4 json files should be generated in the data folder :
movies.jsona simple list of movies ids.movie_details.jsona dictionnary associating a movie to its details.movie_grid.jsonthe coordinates on a grid calculated for each movie.movie_grid_adult.jsonthe same as the previous one but the grid also contains adult movies.
You can then simply open index.html in your favorite browser to display the movie sorting grid.
Note : The browser can sometimes block the read access to the different json files. Simply open
index.htmlin a small server. (ex: runpython3 -m http.server 8000in the project folder, then open the web app.)
This product uses the TMDB API but is not endorsed or certified by TMDB.