Skip to content

rupesh1787/CineMind

Repository files navigation

🎬 CineMind - Your Personal Cinema Companion

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.

CineMind TypeScript Tailwind CSS

✨ Features

  • 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

🚀 Getting Started

Prerequisites

Installation

  1. Clone the repository:
git clone https://github.com/rupesh1787/CineMind.git
cd CineMind/cinemind
  1. Install dependencies:
npm install
  1. Create a .env.local file in the root directory:
TMDB_API_KEY=your_tmdb_api_key_here
OMDB_API_KEY=your_omdb_api_key_here
  1. Run the development server:
npm run dev
  1. Open http://localhost:3000 in your browser.

🏗️ Tech Stack

  • Framework: Next.js 16 with App Router
  • Language: TypeScript
  • Styling: Tailwind CSS 4.0
  • APIs: TMDB (The Movie Database), OMDb
  • Deployment: Vercel (recommended)

📁 Project Structure

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)

🎯 How It Works

  1. Story Selection - Choose 1-2 story types that match your mood
  2. Preference Tuning - Set your vibe, time available, language, and cinema world
  3. AI Curation - The engine analyzes 150+ candidates using:
    • Theme pattern matching
    • Quality signals (IMDb rating, vote count, popularity)
    • Freshness scoring
    • Runtime fit
    • Regional relevance
  4. Personalized Results - Get your top pick, story matches, hidden gems, and a surprise pick

🌐 Deployment

Deploy to Vercel (Recommended)

Deploy with Vercel

  1. Push to GitHub
  2. Import to Vercel
  3. Add environment variables (TMDB_API_KEY, OMDB_API_KEY)
  4. Deploy!

Manual Deployment

npm run build
npm start

🔑 Environment Variables

Variable Description Required
TMDB_API_KEY The Movie Database API key Yes
OMDB_API_KEY Open Movie Database API key Yes

📝 License

This project is open source and available under the MIT License.

🙏 Acknowledgments

  • TMDB for the movie database
  • OMDb for IMDb ratings
  • Vercel for hosting

Built with ❤️ for movie lovers

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors