Skip to content

🎬 Netflix-style streaming platform built with Next.js 15, React, TypeScript & Firebase. Features AI recommendations, watchlists, ratings, dark mode, and admin dashboard. Browse movies & TV shows with TMDB API integration.

Notifications You must be signed in to change notification settings

ageborn-dev/streamverse

Repository files navigation

StreamVerse 🎬

A Netflix-like streaming platform to browse movies & TV shows, create watchlists, rate content, and get AI-powered recommendations.

🌐 Live Demo

Next.js React TypeScript Firebase


✨ Features

Feature Description
πŸŽ₯ Content Discovery Browse trending movies & TV shows, search, filter by genre/year/rating
πŸ‘€ User Accounts Email/password & Google OAuth authentication
⭐ Personalization Watchlists, ratings, viewing history, favorite actors
πŸ€– AI Recommendations Personalized suggestions powered by Google Gemini
πŸ“Ί Watch Providers See where to stream, rent, or buy (via JustWatch)
🎨 Dark/Light Mode Theme toggle with responsive design
πŸ› οΈ Admin Dashboard User management, content caching, analytics

πŸš€ Quick Start

Prerequisites

Installation

# Clone and install
git clone https://github.com/ageborn-dev/streamverse.git
cd streamverse
npm install

# Configure environment
cp .env.local.example .env.local
# Edit .env.local with your Firebase config

# Run development server
npm run dev

Open http://localhost:9002

Note: TMDB and Gemini API keys are configured via the Admin Dashboard (/admin/settings), not in .env.local.


πŸ”§ Environment Variables

Create .env.local with your Firebase configuration:

NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id

πŸ› οΈ Tech Stack

Category Technologies
Frontend Next.js 15, React 18, TypeScript, Tailwind CSS, shadcn/ui
Backend Firebase Auth, Firestore, Firebase Storage
APIs TMDB API, Google Gemini AI
Deployment Vercel

πŸ“ Project Structure

src/
β”œβ”€β”€ app/           # Next.js pages & API routes
β”œβ”€β”€ components/    # React components (ui/, content/, layout/)
β”œβ”€β”€ context/       # React Context providers
β”œβ”€β”€ firebase/      # Firebase configuration
β”œβ”€β”€ lib/           # Utilities & API helpers
└── ai/            # AI features (Genkit + Gemini)

πŸ” Admin Access

  1. Create an account and log in
  2. In Firestore, set users/{your-uid}/isAdmin: true
  3. Access /admin dashboard

πŸ“¦ Commands

npm run dev       # Development (port 9002)
npm run build     # Production build
npm run lint      # ESLint
npm run typecheck # TypeScript check

πŸš€ Deploy to Vercel

  1. Push to GitHub
  2. Import repo at vercel.com
  3. Add environment variables
  4. Deploy!

πŸ“„ License

MIT License - see LICENSE


Created by Ageborn Dev β€’ Built with ❀️ using Next.js & Firebase

About

🎬 Netflix-style streaming platform built with Next.js 15, React, TypeScript & Firebase. Features AI recommendations, watchlists, ratings, dark mode, and admin dashboard. Browse movies & TV shows with TMDB API integration.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages