Enterprise Cinema Booking Platform
LiveOverview
Enterprise Cinema Booking Platform is a scalable, multi-tenant cinema management and ticket booking system built with the MERN stack, TypeScript, Docker, and WebSockets.
The platform supports real-time seat reservations via Socket.IO, three-role RBAC, cinema administration with approval workflows, PayPal checkout with automatic refunds, QR code ticket generation, booking history, and separate management dashboards for users, cinema admins, and platform admins.
Architecture
Challenges & Solutions
Multiple users booking the same seat simultaneously leads to double-booking race conditions.
Used Socket.IO to broadcast seat state in real time and a 15-minute reservation timer backed by Redis to lock seats atomically during the checkout flow.
A cinema platform must serve distinct workflows for customers, cinema operators, and platform administrators without exposing privileged routes.
Implemented three-tier RBAC (User, Cinema Admin, Platform Admin) with JWT refresh tokens, bcrypt password hashing, and middleware-level role guards on every protected endpoint.
Platform Stats
User Roles
3
User, Cinema Admin, Platform Admin
Real-Time
WebSockets
Live seat reservation via Socket.IO
Payments
PayPal
Sandbox & production with auto-refunds
Deployment
Docker
Containerised frontend & backend
Features
- Real-time seat reservation with WebSocket live updates and interactive seat map
- 15-minute booking timer with automatic expiration and seat release
- QR code tickets with PDF download
- JWT authentication with refresh tokens and OTP email verification
- Role-based access control: User, Cinema Admin, Platform Admin
- Secure password hashing with bcrypt, rate limiting, and CORS protection
- PayPal Checkout integration with sandbox & production modes and automatic refunds on cancellation
- Multi-cinema support - B2B platform with cinema admin applications and approval workflows
- Movie & showtime management with dynamic pricing and seating layout customisation
- Platform Admin dashboard for user, cinema, and movie management with revenue tracking
- Cinema Admin dashboard for showtimes, bookings, and analytics
- Movie and cinema reviews with star ratings, verified booking badge, and moderation
- Dockerised frontend and backend services