Skip to content

noisyboy08/Netlytics

Repository files navigation

🎬 NETFLIXPRO - ADVANCED CONTENT ANALYTICS DASHBOARD

AI-Assisted Strategic Insights for Movies & TV Shows (2008–2021)

NetflixPro React TypeScript Vite Tailwind Supabase Status

🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿

β–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—     β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—  β–ˆβ–ˆβ•—β–ˆβ–ˆβ•—β–ˆβ–ˆβ•—  β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β•β•β•β•β•
β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  
β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘     β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β•β•  
β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β•šβ•β•  β•šβ•β•β•β•β•šβ•β•β•β•β•β•β•   β•šβ•β•   β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β•β•šβ•β•  β•šβ•β•β•šβ•β•β•šβ•β•  β•šβ•β•β•šβ•β•β•β•β•β•β•

🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿🍿

🎯 Next-Generation Content Intelligence & Strategic Analytics
Catalog Insights β€’ Global Coverage β€’ Executive Summaries β€’ Recommendations

πŸ”§ Live Demo β€’ πŸ“– Docs β€’ ⭐ Star this project


🌟 Revolutionary Features

πŸ“ˆ DATA-DRIVEN DASHBOARD

  • KPI Cards (Total, Movies, TV Shows, Countries)
  • Growth Trends by Year
  • Rating, Genre, and Country Distributions

πŸ”Ž EXPLORE CONTENT

  • Full-Text Search (Title, Director, Cast, Country)
  • Multi-filters: Type, Year, Rating, Genre, Country
  • Rich Content List with Selection

🧠 AI-ASSISTED INSIGHTS

  • Strategic Insights Panel (Strengths, Gaps, Opportunities)
  • Executive Summary
  • Exportable Text Report

🧭 ADVANCED ANALYTICS

  • Diversity Index (Genre/Country/Type balance over time)
  • Genre Network (co-occurrence graph)
  • Regional Representation & Inclusion Tracker
  • Country-level Breakdown & World Map

πŸ”₯ Core Capabilities

  • 🎬 Comprehensive Catalog Analytics: Movies vs TV Shows, Genre/Country mix
  • πŸ” Intelligent Filtering: Combine multiple filters for precise queries
  • 🧩 Recommendations: Related titles based on type/genre/country/year/ratings
  • πŸ“Š Rich Visualizations: Line, Bar, Pie, Network, and Map views
  • πŸ—„οΈ Supabase Integration: Seed and query netflix_content table
  • πŸ“₯ Export: One-click executive report download
  • 🎨 Modern UI/UX: Tailwind CSS design with responsive grid

πŸš€ Quick Start Guide

⚑ Prerequisites

βœ… Node.js 18+
βœ… npm
βœ… Modern Browser

πŸ› οΈ Installation & Setup

# Clone the repository
git clone <your-repo-url>
cd Netflix/project

# Install dependencies
npm install

# (Optional) Configure Supabase for persistence
# Create .env in project/ with your credentials
# VITE_SUPABASE_URL=your-supabase-url
# VITE_SUPABASE_ANON_KEY=your-anon-key

# Apply database schema (Supabase SQL editor)
# Run: supabase/migrations/20251001165710_create_netflix_content_tables.sql

# Start development server
npm run dev

πŸŽ‰ App Running: http://localhost:5173
πŸ—„οΈ Database: Supabase table netflix_content (auto-seeded on first run)

Note: Supabase credentials are required for DB seeding and fetching. Ensure .env is present at project/.env before starting.


πŸ—οΈ Project Architecture

🎬 NETFLIXPRO ANALYTICS DASHBOARD
┣━━ project/
┃   ┣━━ index.html                 # Root HTML
┃   ┣━━ package.json               # Scripts & deps
┃   ┣━━ vite.config.ts             # Vite config
┃   ┣━━ tailwind.config.js         # Tailwind config
┃   ┣━━ postcss.config.js          # PostCSS plugins
┃   ┣━━ supabase/
┃   ┃   ┗━━ migrations/            # SQL schema
┃   ┗━━ src/
┃       ┣━━ main.tsx               # App mount
┃       ┣━━ App.tsx                # Tabs, data flow
┃       ┣━━ index.css              # Tailwind directives
┃       ┣━━ lib/
┃       ┃   ┗━━ supabase.ts        # Supabase client
┃       ┣━━ types/
┃       ┃   ┗━━ netflix.ts         # Data types
┃       ┣━━ data/
┃       ┃   ┣━━ netflixData.ts     # Synthetic dataset generator
┃       ┃   ┗━━ Netflix Dataset.csv # Raw CSV (reference)
┃       ┣━━ utils/                 # Analytics & helpers
┃       ┃   ┣━━ dataAnalysis.ts
┃       ┃   ┣━━ advancedAnalysis.ts
┃       ┃   ┣━━ recommendations.ts
┃       ┃   ┣━━ exportUtils.ts
┃       ┃   ┗━━ seedDatabase.ts
┃       ┗━━ components/            # UI & charts
┃           ┣━━ StatCard.tsx
┃           ┣━━ PieChart.tsx, BarChart.tsx, LineChart.tsx
┃           ┣━━ GenreNetwork.tsx, WorldMap.tsx, DiversityIndex.tsx
┃           ┣━━ InclusionTracker.tsx
┃           ┣━━ SearchFilters.tsx, ContentList.tsx
┃           ┗━━ RecommendationModal.tsx, StrategicInsights.tsx
┗━━ README.md

πŸ› οΈ Technology Stack

βš›οΈ Frontend Core

  • React 18
  • TypeScript 5.5
  • Vite 5.4
  • Tailwind CSS 3.4

🌐 Data & Services

  • Supabase (Postgres + REST) for storage and seeding
  • Local synthetic dataset as fallback/seed source

πŸ”§ Dev & Quality

  • ESLint (TS + React Hooks)
  • npm scripts

πŸš€ Features Breakdown

πŸ“Š Dashboard

  • KPI cards and executive summary
  • Content growth line chart (2008–2021)
  • Top genres and countries bar charts
  • Type distribution pie chart

πŸ” Explore

  • Real-time search across title/director/cast/country
  • Multi-select filters: Types, Years, Ratings, Genres, Countries
  • Result count with active filter indicator

🧠 Advanced Analytics

  • Diversity index by year (genre/country/type balance)
  • Genre co-occurrence network
  • Regional representation and inclusion tracker
  • Country details with top genres

🎯 Recommendations

  • Similarity based on type/genres/country/rating/year/duration
  • Modal with curated related content

🧾 Export

  • One-click report: netflix-analytics-report.txt
  • CSV export helper available for datasets

πŸ“± Responsive Design

Device Breakpoint Layout Features
Mobile < 640px Single column Full-width cards, touch optimized
Tablet 640–1024px Two columns Balanced layout
Desktop 1024–1440px Three cols Sidebar-style sections
Large > 1440px Expanded grid Max content density

πŸ” Environment Variables

Create project/.env:

VITE_SUPABASE_URL=your-supabase-url
VITE_SUPABASE_ANON_KEY=your-anon-key

These are required at build/start time. Keep them private and never commit .env (already gitignored).


🀝 Contributing

  1. 🍴 Fork this repository
  2. 🌟 Star to support
  3. πŸ”§ Follow linting and TypeScript best practices
  4. πŸ§ͺ Test changes locally (filters/analytics/reports)
  5. πŸ“ Commit with clear messages
  6. πŸš€ Open a detailed Pull Request

πŸ“œ License & Credits

πŸ“„ MIT License – Free for personal & commercial use

πŸ™ Acknowledgments

  • βš›οΈ React Team
  • 🎨 Tailwind CSS
  • πŸ—„οΈ Supabase
  • πŸ“Š Open-source visualization inspiration

🎬 Built for Data-Driven Content Strategy
πŸ“ˆ Insights β€’ 🌍 Global Coverage β€’ 🧭 Smart Exploration

⭐ Star this repo if it helped you! ⭐

🍿 Understand the catalog. Discover gaps. Drive strategy. 🍿

πŸš€ Ready to analyze the Netflix catalog? Launch the dashboard now! πŸš€

About

🎬 AI-powered Netflix analytics & visualization platform built with React, Supabase, and Jupyter.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors