A website where you can input CSV files and see various stats about your movie watching habits! The CSV file must have movie title and rating as two columns. The title column must be called "Title" and rating column must be called "Your Rating" otherwise it won't work. There's a few tabs for homepage and about, but the main focus is the uploading one. Right now the only outputted statistic is your favorite director but I hope to add more when I have the time! This project was just a fun side project for me because I like looking at statistics for the things I watch. I know that Letterboxd has a similar thing but it didn't have all the functinoality I wanted so I decided to create this. Hopefully this website works well for you and you learn something new about your watching habits! Unfortunately it looks like the IMDb API has changed so I'm not sure about the functionality of the site anymore. Will fix soon!
The tech stack uses Django as the backend for routing and various function purposes. The frontend is made using HTML and CSS. The HTML uses the template engine system which is based on Jinja so I can pass in various information dynamically through the backend so the frontend isn't static (i.e. the outputted statistics once the backend runs the SQL). The database is managed using Django as it has a model system similar to SQLite3 and other SQL databases. The data is then queried with SQL to access the various information I want to use.
To access information about the movies, I query the IMDb API https://developer.imdb.com to get the information I want about the movies. This includes writers, directors, genres and more. This is then also stored in my Django database.
To run the website locally, first make sure to install Django by doing "pip install Django" or "pip3 install Django" in the terminal. I would recommend entering a virtual environment first so this install doesn't mess with any other code on your system. To do that, follow these instructions for mac https://sourabhbajaj.com/mac-setup/Python/virtualenv.html. Do this in the same directory as the files. Then enter "python manage.py runserver" in the terminal while in the movieStats folder (it should have a folder in it called manage.py) and the website should start on your localhost.