Piotr Krząstek
Junior web developer
Movies
Movies is a really simple web application where users can track their last watched movies and it's ratings as well as share this information with friends. This was one of my key projects from the Udemy course Web Developer Bootcamp with Flask and Python in 2024. It can be considered as my final test before completing the course and earning my certificate.
Features
Movies allows users to create a free account and add any movie they want to keep their ratings and last watch dates in one place. You can completely customize your movie page by adding description, short video, cast, genres and series. That way you can know exactly when was the last time you watched a particular movie and change it's rating whenever you feel like it. You could as well send your friends a link to your movie so they can see your rating and the way you customized it's page.
Tech stack
-
Python/Flask
-
HTML
-
CSS
-
MongoDB
Screenshots
The style on this website is the same as the one in the course since I knew im not gonna develop more on this and used it as a practice and challenge for my CSS skills. Regardless it contains two themes dark and light you can use one or the other depending on your preferences. The site is really simple but I tried to make it as pretty as I can since CSS is not something I enjoy writing.
Quickstart
To host this app, simply clone the repo at the bottom of this site, then you just install all the requirements in pip. If you did previous steps create .env file in your project directory with DBURI inside where you pass your Mongo database URI. Once done you just simply use "flask run" in your command line to run the application.
Security
Movies takes user password security seriously. All sensitive data in the database is hashed using the passlib python library, ensuring passwords are stored securely.
It's important to note that if you share a direct link to a specific movie page with another registered user, that user will be able to modify the content of that page. This is due to the way the application was originally designed during the course. While I could implement access controls to restrict editing, I've chosen to focus my development efforts on other projects with higher priority.
If you have concerns about this behavior, you are welcome to implement your own access controls and host the application privately, or submit a pull request with your improvements.
Roadmap
Troubleshooting
If something doesn't work make sure you installed everything from requirements.txt and your .env has exactly one variable DBURI. Once you made sure you have set up everything perfectly and app still doesn't work or works but not as intended feel free to contact me and I will do my best to help you and possibly create a following FAQ section.
Repository:
github.com/PiotrKrzastek/movie_watchlistLive website
movie-watchlist-sgo6.onrender.com/home