CinemaHub — Movie Reservation System
A production-grade cloud-hosted movie reservation platform built end-to-end — from React/TypeScript frontend and Node.js/PostgreSQL backend to full AWS deployment with CI/CD automation and observability.
Backend Architecture
- RESTful APIs for auth, reservations, movie management, and admin reporting using Prisma ORM
- JWT authentication with rotating refresh tokens and Redis-based token revocation
- PostgreSQL row-level locking to prevent double-booking under concurrent seat requests
- Role-based authorization with granular access control across user, staff, and admin roles
AWS Infrastructure & Deployment
- Frontend delivered via CloudFront CDN with Origin Access Control (OAC) and private S3 bucket
- Backend on ARM64 EC2 with Caddy HTTPS, Docker multi-stage builds, and separate EBS data volumes
- Route 53 DNS routing, IAM least-privilege roles, rate limiting, and environment secret management
- Automated EBS snapshots, PostgreSQL backup workflows, and CloudWatch alerting
CI/CD Pipeline
- GitHub Actions with OIDC authentication — no long-lived AWS credentials stored in secrets
- Automated S3 sync for frontend assets and CloudFront cache invalidation on every push
- SSM-based backend redeployment — remote Docker pull and container restart via Run Command
Scale & Data
- Seeded with 50+ movies, 800+ showtimes, and 87,000+ generated seats for realistic load testing
- Optimized cost/performance with ARM64 instances and Docker multi-stage image builds