Your Personalized Movie Discovery Companion
An intelligent, real-time movie recommendation engine powered by content-based machine learning.
Experience instant, personalized suggestions based on your unique taste profile.
FlickPick is not just another movie app—it's a sophisticated recommendation system designed for speed and accuracy. By leveraging Sentence Transformers and cosine similarity, FlickPick analyzes movie descriptions and genres to find hidden gems that match your preferences perfectly.
The system learns from your ratings in real-time. Every like, dislike, or star rating instantly refines your profile, ensuring that your next recommendation is better than the last.
- 🔮 Smart Recommendations: Advanced content-based filtering that understands the nuance of movies, not just the genre.
- ⚡ Instant Feedback Loop: No waiting for nightly batch jobs. Rate a movie, and your feed updates immediately.
- 🎨 Modern Data-Rich UI: Built with Next.js 15 and Tailwind CSS 4, featuring a beautiful dark-themed interface with smooth animations (Framer Motion).
- 📋 Watchlist Management: Keep track of what you want to see next.
- 🔍 Deep Search: Find movies by title, genre, or keywords.
- Framework: Next.js 15 (App Directory)
- Language: TypeScript
- Styling: Tailwind CSS 4
- Animations: Framer Motion
- Data Fetching: Axios
- API: FastAPI (High performance Python 3.10+ framework)
- Database: MySQL with SQLAlchemy ORM
- Machine Learning: Sentence Transformers (
all-MiniLM-L6-v2) for vector embeddings.
This project utilizes the TMDB 930k Movie Dataset from Kaggle for comprehensive movie metadata and descriptions.
- Node.js (v18+)
- Python (3.10+)
- MySQL Server
-
Clone the Repository
git clone https://github.com/yourusername/flickpick.git cd flickpick -
Backend Setup
cd backend python -m venv .venv # Windows .venv\Scripts\activate # Mac/Linux # source .venv/bin/activate pip install -r requirements.txt
Note: Ensure your MySQL server is running and
database.pyis configured correctly.Start the API server:
fastapi dev main.py
-
Frontend Setup
cd frontend/flickpick pnpm install pnpm dev -
Experience It Open http://localhost:3000 in your browser.
Contributions are welcome! Please feel free to submit a Pull Request.
Created by KavinMK05