A modern, secure streaming platform with AI-powered recommendations, built with FastAPI, Next.js, and PostgreSQL.
- 🔐 Enterprise Security: JWT authentication, password hashing, rate limiting
- 🎬 Movie Streaming: High-quality video playback with progress tracking
- 🤖 AI Recommendations: Hybrid content-based and collaborative filtering
- 🎨 Modern UI: Responsive design with smooth animations
- 📱 Interactive Features: Like/dislike, watchlist, user preferences
- 🚀 Scalable Architecture: Docker containerization, Redis caching
- Python 3.11+
- Node.js 18+
- PostgreSQL 15+
- Redis 7+
- Docker (optional)
-
Clone the repository
git clone https://github.com/ADCarthan88/StreamFlix-Platform.git cd StreamFlix-Platform -
Run setup script
Windows:
scripts\setup.bat
Linux/Mac:
chmod +x scripts/setup.sh ./scripts/setup.sh
-
Configure environment
- Update
.envwith your secure database credentials - Generate a strong SECRET_KEY
- Update
-
Start the platform
docker-compose -f infrastructure/docker/docker-compose.yml up -d
StreamFlix-Platform/
├── backend/ # FastAPI application
├── frontend/ # Next.js application
├── ai-recommendation/ # ML recommendation engine
├── database/ # PostgreSQL schemas
├── security/ # Security configurations
├── infrastructure/ # Docker & deployment
└── scripts/ # Setup & deployment scripts
- Password hashing with bcrypt and salt
- JWT token authentication
- Rate limiting and account lockout
- SQL injection prevention
- XSS protection headers
- HTTPS/SSL encryption
- Input validation and sanitization
POST /api/auth/register- User registrationPOST /api/auth/login- User authenticationGET /api/movies- Get all moviesGET /api/recommendations- Get personalized recommendations
cd backend
uvicorn main:app --reload --host 0.0.0.0 --port 8000cd frontend
npm run dev- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
This project is licensed under the MIT License.
For support, please open an issue on GitHub.