A modern, AI-powered movie recommendation app that understands your mood and story preferences. Built with Next.js 16, featuring a cinematic dark theme and emotionally intelligent recommendations.
- Story-Based Recommendations - Choose from 10 unique story types like "Revenge & Passion", "Forbidden Romance", "Brilliant Minds"
- Rotating Daily Picks - Fresh recommendations that change every 6 hours
- Multi-Industry Support - Hollywood, Bollywood, South Indian, Korean, and International cinema
- 10+ Indian Languages - Hindi, Tamil, Telugu, Malayalam, Kannada, and more
- Cinematic UI - Premium dark theme with film grain, vignette effects, and smooth animations
- Smart Ranking Engine - Multi-signal scoring with story alignment, quality metrics, and freshness
- Node.js 18+
- npm or yarn
- TMDB API Key (Get one here)
- OMDb API Key (Get one here)
- Clone the repository:
git clone https://github.com/rupesh1787/CineMind.git
cd CineMind/cinemind- Install dependencies:
npm install- Create a
.env.localfile in the root directory:
TMDB_API_KEY=your_tmdb_api_key_here
OMDB_API_KEY=your_omdb_api_key_here- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
- Framework: Next.js 16 with App Router
- Language: TypeScript
- Styling: Tailwind CSS 4.0
- APIs: TMDB (The Movie Database), OMDb
- Deployment: Vercel (recommended)
cinemind/
├── app/ # Next.js app router pages
│ ├── api/ # API routes
│ │ ├── movie/[id]/ # Movie details endpoint
│ │ ├── recommend/ # AI recommendation engine
│ │ └── top/ # Trending & daily picks
│ ├── movie/[id]/ # Movie detail page
│ ├── results/ # Recommendations results page
│ └── page.tsx # Home page
├── lib/ # Core logic
│ ├── recommendationEngine.ts # Main orchestrator
│ ├── storyIntelligence.ts # Story pattern matching
│ ├── candidatePool.ts # Multi-source fetching
│ ├── rankingEngine.ts # Weighted scoring
│ └── curation.ts # Result organization
├── components/ # React components
├── types/ # TypeScript definitions
└── data/ # Static data (genres, moods)
- Story Selection - Choose 1-2 story types that match your mood
- Preference Tuning - Set your vibe, time available, language, and cinema world
- AI Curation - The engine analyzes 150+ candidates using:
- Theme pattern matching
- Quality signals (IMDb rating, vote count, popularity)
- Freshness scoring
- Runtime fit
- Regional relevance
- Personalized Results - Get your top pick, story matches, hidden gems, and a surprise pick
- Push to GitHub
- Import to Vercel
- Add environment variables (TMDB_API_KEY, OMDB_API_KEY)
- Deploy!
npm run build
npm start| Variable | Description | Required |
|---|---|---|
TMDB_API_KEY |
The Movie Database API key | Yes |
OMDB_API_KEY |
Open Movie Database API key | Yes |
This project is open source and available under the MIT License.
Built with ❤️ for movie lovers