MovieMe is a web-based social platform that enriches the experience of discovering and sharing movies through social interactions. The platform serves as both a personal movie catalog system and a movie-centric social network.
- Please review the refactored and optimized microservices project, now with WebSocket real-time chat support, rabbitmq for better decoupling and enhanced stateless JWT authentication. [https://github.com/Polumm/demo-whatsapp]
- User Authentication & Profiles: Secure user accounts with personalized movie collections.
- Social Connectivity: Friend requests and friend-based movie recommendations.
- Intelligent Chatbot: Personalized movie recommendations using mood, genre preferences, and friends’ movie selections powered by Google Gemini API.
- Advanced Movie Search: Explore movies with extensive filtering using TMDB API.
-
Microservices:
- Main Application (Flask-based frontend)
- Database Microservice (PostgreSQL, Redis caching)
- Chatbot Microservice (Google Gemini API integration)
-
Hosting & Deployment:
- Azure Kubernetes Service (AKS) and Azure Container Instances (ACI)
- Docker containerization for consistency
- GitHub Actions for automated deployments
- Frontend: Flask (HTML/CSS/JavaScript), AJAX
- Backend: Python, PostgreSQL, Redis
- Microservices: Docker, Kubernetes, Azure
- APIs: TMDB, Google Gemini, Movie Quotes API
- Web App: MovieMe
- Demo Video: Watch here
- Main App Repo: COMP70085-Team-Project-II
- Database Microservice Repo: chatbot-database
- Chatbot Microservice Repo: chatbot-service
- Caching Strategy: Redis for rapid data retrieval, fallback to PostgreSQL.
- Scaling: Kubernetes autoscaling to manage traffic (tested with 3000+ users).
- Session Management: Session affinity with cookie-based routing to maintain consistent user experience.
- Authentication: JWT-based secure and stateless authentication.
- API Security: Strict input validation and secure decorator-based access control.
- Improved chatbot natural language interactions.
- Movie soundtrack integration.
- Expanded social media-inspired features.
- Enhanced AI-driven personalized recommendations.
- Asal Shams
- Chujia Song
- Kevin Chave
- Sermila Ispartaligil
- Ziheng Shan