Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

433 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YMovies - A Movie Recommendation Platform

Live Demo License: MIT TypeScript React Node.js Python TMDB

A Netflix-style movie recommendation platform with intelligent AI-powered movie recommendations and modern web technologies.

Live DemoDocumentationIssuesDiscussions

ymovies yerradouani me_

What Makes YMovies Special

  • Smart AI Recommendations - 13+ personalized categories powered by content analysis.
  • Rich Movie Database - 800,000+ movies from TMDB with detailed information, trailers, and reviews.
  • Secure Authentication - Firebase-powered user accounts with personalized watchlists and preferences.
  • Modern Interface - Netflix-style responsive design with smooth animations and accessibility support.

Architecture

  • Frontend: React + TypeScript + Tailwind CSS (deployed on Vercel)
  • Backend: Node.js + Express + PostgreSQL (deployed on Heroku)
  • AI Engine: Python + Flask for machine learning recommendations
  • External APIs: TMDB for movie data, Firebase for authentication

Quick Start

One-Command Setup (Recommended)

New to the project? Start here:

# Linux/Mac users
git clone https://github.com/yassnemo/ymovies-v3.git
cd ymovies-v3
chmod +x setup.sh && ./setup.sh

# Windows users
git clone https://github.com/yassnemo/ymovies-v3.git
cd ymovies-v3
setup.bat

This automated setup will:

  • ✅ Install all dependencies
  • ✅ Create your environment file
  • ✅ Guide you through API key setup
  • ✅ Check your system requirements

Start Development

After setup, you have options:

# Option 1: Full development (needs database setup)
npm run dev

# Option 2: Simple mode (works without database)
npm run dev:simple

# Option 3: Frontend only (for UI development)
npm run dev:client

For the quickest start: Use npm run dev:simple - it works immediately with just TMDB API key!

Required API Keys

You'll need these to get started:

  1. TMDB API Key (required) - Get it free here
  2. Firebase Project (for authentication) - Setup guide
  3. Database URL (optional) - Use npm run dev:simple to skip this initially

Troubleshooting

Having issues? We've got you covered:

  • Setup problems: Check docs/TROUBLESHOOTING.md
  • Environment issues: Run node scripts/development/check-env-simple.js
  • Still stuck: Create an issue or check the FAQ

Tech Stack

  • Frontend: React 18 + TypeScript + Vite + Tailwind CSS
  • Backend: Node.js + Express + Python ML Service
  • Database: PostgreSQL + Drizzle ORM
  • Auth: Firebase Authentication + JWT
  • Deployment: Heroku (Backend) + Vercel (Frontend)

Deployment

Quick Deploy:

  • Frontend: Deploy with Vercel
  • Backend: Deploy to Heroku using npm run build:heroku

Detailed guides: Check docs/deployment/ for step-by-step instructions

Contributing

  1. Fork the repo and create a branch: git checkout -b feature/amazing-feature
  2. Make changes and test: npm test
  3. Commit: git commit -m 'Add amazing feature'
  4. Push and open a Pull Request

Full guidelines: Contributing Guide

Credits

  • TMDB for movie data
  • Open-source libraries that made this possible

Support

License

MIT License - see the LICENSE file for details.


Built With Love By This Guy Yassine Erradouani

And of course, star this project if you found it helpful!

About

A Netflix-style movie recommendation platform with intelligent AI-powered movie recommendations and modern web technologies.

Topics

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

Used by

Contributors

Languages