A Django-based website for reviewing movies and TV series, allowing users to explore movie information, manage watchlists, and filter or sort movies by genres, awards, and more. This site integrates with the TMDb API to fetch movie and TV show data.
Homepage.mp4
Search for movies using the search bar and filters to quickly find details about your favorite movies and TV series.
Search.demo.mp4
Users can add movies and TV shows to their personal watchlist. View, manage, and organize the watchlist according to preferences.
watchlist.online-video-cutter.com.mp4
Genre and Award Filters: Narrow down movie results by genre or award categories. Sorting Options: Sort movies by title, release date, or rating to easily browse content.
filters.and.sort.online-video-cutter.com.mp4
Follow actors, directors, and other users to receive updates. Get notified when new movies or shows featuring followed actors or directed by followed directors are released.
Custom User Model: Each user has a personalized profile page where they can view their activity, watchlist, and followed actors/directors/profiles.
User Reviews: Users can leave detailed reviews for movies and TV series. Rating System: Rate movies/TV series on a scale of 1 to 10, with average ratings displayed on the movie pages.
- Admin: Full access to manage all content on the website, including adding, editing, and deleting movies, TV series, and user reviews. Admins can also manage user accounts and permissions.
- Moderator: Ability to review, approve, or remove user-submitted content such as reviews and comments. Moderators can also manage flagged content for potential issues.
- User: Standard access to the platform, including adding movies or TV shows to their watchlist, leaving reviews, and rating content. Users can follow other users, actors, and directors.
- Backend: Django (Python)
- Frontend: HTML5, CSS3, JavaScript
- Database: SQLite
- API Integration: The Movie Database (TMDb) API
- Authentication: Django Allauth for social logins and user authentication.
This project integrates with the TMDb API to fetch real-time movie and TV series data, including:
- Titles
- Overviews
- Release Dates
- Posters and Backdrops
-
Clone the Repository
Clone the project from GitHub to your local machine:
git clone https://github.com/RoelVillaluz/Movie-Website.git cd movie_project
-
Create and Activate a Virtual Environment
# Create a virtual environment python -m venv venv # Activate the virtual environment # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
-
Install project dependancies
pip install -r requirements.txt
-
Set Up the Database
python manage.py migrate
-
Create a Superuser (Optional)
python manage.py createsuperuser
-
Run the Development Server
python manage.py runserver
You can now access the project at http://127.0.0.1:8000/.
- Fork the repository and create your feature branch
git checkout -b feature/new-feature
- Commit your changes with descriptive messages:
git commit -m 'Add a new feature'
- Push to the branch and open a pull request:
git push origin feature/new-feature