This project is a web application which allows users to store and play the trailers of their favorite movies. The application is powered by the Django Web Framework and Django's third party applications. It uses the Bootstrap Frontend Framework to nicely render the UI.
Following are some of the major features of the application:
- User Authentication feature - signup(through django-registration's 2-step verification), login and logout
- Reset password feature - The reset password link is send to email
- Change password feature - The password can be changed when the user is logged in
- Authorization and Permission feature - Only logged users can store and play trailers.
- Feature to store movie trailer url, movie poster and movie plot.
- Feature to edit movie trailer url, movie poster and movie plot.
- Feature to delete movie trailer.
- Feature to list a user's stored trailers.
- Landing Page
- Sign Up Page
- Reset Password Page
- Login Page
- Change Password Page
- Home Page of Logged in User
- Movie Trailer Add Page
- Playback of trailer in Home Page
- Movie detail page
- Playback of trailer in Movie detail page
- Movie edit page
- Movie delete page
Note:
- For signup, you need to have smtp backend support through a third party like
sendgrid
. Save the environment variables for the smtp email user and smtp email password of your smtp applicationin.env
file in the project's root directory. I used sendgrid.
EMAIL_HOST_USER=<your_apikey>
EMAIL_HOST_PASSWORD=<your_password>
- For creating virtual environment, installing the dependencies and loading the environment variables, I used
pipenv
.
# git clone https://github.com/realnitinworks/trailers-app.git
# pipenv install
# pipenv shell
# python manage.py runserver