How deepacknavaraj1404-coder/moviebooking works
CineVerse is a movie-ticket booking platform: visitors browse and search films, inspect details and trailers, authenticate, and book showtime seats; users can revisit or cancel bookings, while administrators manage the catalog and verify tickets. The React app communicates through an API client with Express routes, which use a shared store; the README documents MongoDB with an in-memory fallback. The graph preserves documented theater, showtime, review, and admin capabilities. Several client components and backend routes were not sampled, so uncertain internal calls are omitted.
Main entry points: App.jsx App coordinator · server.js Express API · store.js Data store · auth.js Access control
Components 23
Customer web app
- App coordinator
client/src/App.jsx - Auth state
client/src/context/AuthContext.jsx - Movie browsing
client/src/components/MovieGrid.jsx - Movie details
client/src/components/MovieDetailsModal.jsx - Booking flow
client/src/components/BookingModal.jsx - My bookings
client/src/components/MyBookingsModal.jsx - Admin portal
client/src/components/AdminPortal.jsx - Sign-in form
client/src/components/AuthModal.jsx - Trailer player
client/src/components/TrailerModal.jsx - API client
client/src/services/api.js
API and workflows
- Express API
server/src/server.js - Authentication
server/src/routes/authRoutes.js - Movie catalog
server/src/routes/movieRoutes.js - Theaters
server/src/routes/theaterRoutes.js - Showtimes
server/src/routes/showtimeRoutes.js - Bookings
server/src/routes/bookingRoutes.js - Admin operations
server/src/routes/adminRoutes.js - Movie reviews
server/src/routes/reviewRoutes.js - Access control
server/src/middleware/auth.js
Persistence
- Data store
server/src/services/store.js - Database connection
server/src/config/db.js
Other components
- Moviegoer
- MongoDB
Connections 29
- Moviegoer → App coordinator: uses
- App coordinator → API client: loads movies
- App coordinator → Movie browsing: renders
- App coordinator → Movie details: opens
- App coordinator → Booking flow: opens booking
- App coordinator → My bookings: opens bookings
- App coordinator → Admin portal: shows admin
- App coordinator → Trailer player: opens trailer
- App coordinator → Sign-in form: renders
- Sign-in form → Auth state: submits credentials
- Auth state → API client: requests auth
- Express API → Authentication: mounts
- Express API → Movie catalog: mounts
- Express API → Theaters: mounts
- Express API → Showtimes: mounts
- Express API → Bookings: mounts
- Express API → Admin operations: mounts
- Express API → Movie reviews: mounts
- Express API → Database connection: connects
- Authentication → Data store: reads and writes
- Movie catalog → Data store: reads and writes
- Bookings → Data store: reads and writes
- Admin operations → Data store: reads
- Movie reviews → Data store: reads and writes
- Authentication → Access control: protects profile
- Bookings → Access control: protects bookings
- Admin operations → Access control: guards admin
- Movie catalog → Access control: guards mutations
- Database connection → MongoDB: connects