A high-performance BookMyShow Clone and Movie Ticket Booking System. This project is a comprehensive Full-Stack Java Project featuring a Spring Boot backend and a React 19 frontend with Premium UI/UX.
Designed for scalability and modern aesthetics, this Movie Booking Application serves as a perfect example of architecture using Java 17, Spring Data JPA, and Glassmorphism Design.
- 🏠 Modern Home Page: Discover movies with a sleek hero section and trending grid.
- 📱 Responsive Design: Premium dark mode UI that works on all devices.
- 💺 Interactive Booking: Visual seat selection with real-time price calculation.
- 🔍 Smart Search: Quickly find movies, events, and theaters.
- 📖 API Docs: Fully documented backend with Swagger UI.
| Frontend | Backend | Database |
|---|---|---|
| React 19 + Vite | Spring Boot 3.x | PostgreSQL |
| TypeScript | Java 17 | Hibernate / JPA |
| Framer Motion | Spring Security | Maven |
| Lucide Icons | Swagger / OpenAPI |
- Create a database named
BMSin PostgreSQL. - Open
src/main/resources/application.propertiesand add your DB credentials. - Run the app:
mvn spring-boot:run
- In a new terminal, go to the frontend folder:
cd frontend - Install dependencies & run:
npm install npm run dev
- Visit: http://localhost:5173
BOOKMYSHOW/
├── frontend/ # React App (Components, Pages, Services)
├── src/main/java/ # Backend Logic (Entities, Services, Controllers)
├── src/main/resources/ # Config & SQL Seed Data
└── UI/ # Legacy UI Files (Optional)
graph LR
A[Browse Movies] --> B[View Details]
B --> C[Select Seat]
C --> D[Confirm Booking]
- Swagger API Docs: http://localhost:8080/swagger-ui/index.html
- Local Website: http://localhost:5173
Developed with ❤️ by the Project Team.