A modern, feature-rich movie recommendation platform built with Django. GrandLine Cinema offers a sleek, "Netflix-style" browsing experience, complete with an immersive hero slider, real-time interactions, and personalized user profiles.
- Cinematic Hero Slider: A responsive, full-screen featured movie slider with video trailers and a smooth vignette effect.
- Glassmorphism Design: Modern, translucent UI elements for a premium feel.
- Responsive Layout: Fully optimized for desktop, tablet, and mobile devices.
- Smart Search: Real-time search with Voice Command support ("Search for...") powered by HTMX and Web Speech API.
- "Surprise Me" Machine: A fun, slot-machine style random movie picker.
- Advanced Filtering: Browse by Genre (Action, Drama, etc.) and Language.
- TV Shows: Browse popular TV shows fetched from external APIs.
- User Profiles: customizable profiles with avatars and bio.
- Watchlist & Favorites: Add movies to your personal collections with one click.
- Comments System: Engage with the community by leaving comments on movies.
- Backend: Python 3, Django 4.x
- Frontend: HTML5, CSS3 (Modular), JavaScript (ES6+)
- Libraries:
- HTMX: For seamless, SPA-like interactions without full page reloads.
- Swiper.js: For the touch-enabled, responsive sliders.
- jQuery: For DOM manipulation and effects.
- Database: SQLite (Default) / PostgreSQL ready
git clone <repository-url>
cd MovieRecommendationIt's recommended to use a virtual environment.
Linux/macOS:
python3 -m venv venv
source venv/bin/activateWindows:
python -m venv venv
venv\Scripts\activatepip install -r requirements.txtApply migrations to create the database schema.
python manage.py migrateTo manage movies and users:
python manage.py createsuperuserpython manage.py runserverVisit http://127.0.0.1:8000/ in your browser.
movie/: Core application logic.models.py: Database schemas (Movie, Profile, Comment, etc.).views.py: Business logic and request handling.
templates/:auth/: Login/Signup pages.movies/: Lists and Detail views.pages/: Profile, Contact, and static pages.partials/: Reusable HTMX components (icons, search results).
static/:css/: Modular stylesheets (base.css,pages/home.css, etc.).js/: Custom scripts and libraries.
Contributions are welcome! Please fork the repository and submit a pull request for any enhancements or bug fixes.