Inspiration
I noticed that while TMDB and theatre websites provide details about movies and showtimes, they don’t help audiences decide which theatre experience is best for a specific film. With ticket prices rising, it’s important to know when IMAX or 4DX is worth it, and when a regular theatre is enough. That inspired me to create Theatre Choice — a community-driven platform to make theatre experiences more transparent.
What it does
Theatre Choice displays movies currently in theatres (using TMDB’s API) and lets users rate their viewing experience across formats like IMAX, 4DX, UltraAVX, VIP, D-BOX, ScreenX, 3D, and Regular. Each movie page shows:
- A list of top 5 theatre experiences based on average user ratings
- User reviews with comments, ratings, and chosen theatre type
- A simple AI-powered option to rewrite or polish reviews before posting
This helps users decide the best way to experience each movie.
How I built it
- Frontend: Next.js with React for a fast, modern UI
- Database: MongoDB for storing ratings and comments
- Auth: Clerk for secure user authentication
- APIs: TMDB API for movie details and Google Gemini API for optional AI-assisted review writing
- Hosting: Vercel with custom domain support
Challenges I ran into
- Designing the database schema to connect TMDB movie IDs with user ratings and theatre types
- Ensuring security by protecting API routes, validating user input, and preventing unauthorized edits
- Balancing simplicity and features in the UI while keeping it intuitive
- Working around API limits and structuring calls efficiently
Accomplishments that I'm proud of
- Creating a working prototype that fetches live movie data and displays community ratings
- Building a clear flow from sign-in → rate a theatre → view top 5 experiences
- Integrating authentication and a scalable database structure for long-term use
- Adding an optional AI-powered review assistant to improve user-generated content
What I learned
- How to combine third-party APIs (TMDB + AI) with a custom MongoDB backend
- The importance of access control and validation in web apps
- How to design a database that connects external IDs (movies) with user-generated content
- Best practices for building a clean and secure Next.js app
What's next for Theatre Choice
- Add support for showtime data to suggest not only the best format, but also where and when to watch
- Improve the AI assistant to suggest theatre experiences based on film genre or user history
- Launch a mobile-friendly version with offline caching
- Grow the community by introducing badges, leaderboards, and reward systems for active reviewers
Log in or sign up for Devpost to join the conversation.