A Netflix-style movie recommendation platform with intelligent AI-powered movie recommendations and modern web technologies.
- 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.
- 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
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.batThis automated setup will:
- ✅ Install all dependencies
- ✅ Create your environment file
- ✅ Guide you through API key setup
- ✅ Check your system requirements
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:clientFor the quickest start: Use npm run dev:simple - it works immediately with just TMDB API key!
You'll need these to get started:
- TMDB API Key (required) - Get it free here
- Firebase Project (for authentication) - Setup guide
- Database URL (optional) - Use
npm run dev:simpleto skip this initially
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
- 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)
Quick Deploy:
- Frontend:
- Backend: Deploy to Heroku using
npm run build:heroku
Detailed guides: Check docs/deployment/ for step-by-step instructions
- Fork the repo and create a branch:
git checkout -b feature/amazing-feature - Make changes and test:
npm test - Commit:
git commit -m 'Add amazing feature' - Push and open a Pull Request
Full guidelines: Contributing Guide
- TMDB for movie data
- Open-source libraries that made this possible
- Documentation:
docs/ - Issues: GitHub Issues
- Contact: mailbot@yerradouani.me
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!