A sleek, high-density Netflix-style Django web application to explore trending movies and popular US/GB TV shows powered by The Movie Database (TMDB) API.
Deployed with: @vercel
https://django-movietv-tmdb.vercel.app/
- 🎬 Netflix-Style UI: Immersive dark theme with a compact, high-density responsive fluid grid.
- 📈 Extended Catalogue: Pulls multiple API payloads asynchronously to aggregate 40 items.
- 🇬🇧 US/GB Curated Feeds: TV dashboard tracks both US and UK multi-season productions based on active popularity vectors.
- 🏷️ Automated Genre Decoding: Real-time backend dictionary engine intercepts numerical raw TMDB genre ID arrays and maps them into elegant text strings separated by dots.
- ⚡ Hover Effects & Interaction: Smooth CSS card-scaling zoom triggers on user hovering, with direct external anchor links targeting the media sheets.
This application aggregates live movie metadata using the official TMDB ecosystem. An API Key is required to authorize transactions.
| View Content | Type | TMDB Endpoints |
|---|---|---|
| Trending Movies | GET |
https://api.themoviedb.org/3/trending/movie/week?api_key={TMDB_API_KEY}&language=en-US&page={page}" |
| Popular TV Shows | GET |
https://api.themoviedb.org/3/discover/tv?api_key={TMDB_API_KEY}&language=en-US&sort_by=popularity.desc&with_origin_country=US|GB&page={page} |
# Iterative page stack block to multiply result lists
combined_movies = []
for page in [1, 2]:
response = requests.get(url, timeout=5)
if response.status_code == 200:
data = response.json()
combined_movies.extend(data.get("results", []))| Technology | Version |
|---|---|
| Python | Python 3.12+ |
| Django | Django 6.0.6 |
| Bootstrap | 5.3.8 |
| Hosting | Vercel Serverless Architecture |
| TMDB API | https://developer.themoviedb.org/reference/getting-started |
# 1. Clone the repo
git clone [https://github.com/elreviae/django-movietv-tmdb.git](https://github.com/elreviae/django-movietv-tmdb.git)
cd django-free-imbd
# 2. Create a virtual environment
python -m venv .venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windows
# 3. Install dependencies
pip install -r requirements.txt
# 4. Run the server
python manage.py runserver
- Special thanks to shellchett for his work : @shellchett