Book My Ticket
Auth layer and protected seat booking built on top of the ChaiCode starter — register/login, token middleware, duplicate prevention, and user-associated reservations.
Timeline
ChaiCode — Backend Ninja (Chai Aur SQL)
Role
Backend Developer
Team
Solo
Hackathon Rank
3rd Place
Status
CompletedKey Challenges
- Extending an existing production codebase without breaking endpoints
- Adding JWT auth middleware and protecting booking routes
- Preventing duplicate seat bookings under concurrency
- Associating reservations with authenticated users
Key Learnings
- Integrating auth on top of an existing Express API
- Concurrency-safe booking and seat locking patterns
- Production-style backend extension instead of greenfield builds
Overview
Book My Ticket was built for the ChaiCode Backend Ninja hackathon — a follow-up to Chai Aur SQL where the goal was to study the chaicodehq/book-my-ticket starter and extend it with authentication and a protected booking flow. The project secured 3rd place.
Rather than building from scratch, the focus was on reading existing code, adding register/login with tokens, protecting booking endpoints, preventing duplicate seat reservations, and tying bookings to logged-in users — while keeping mock movie data and all original endpoints intact.
Key Features
- User registration and login with token-based authentication
- Auth middleware protecting seat booking endpoints
- Duplicate seat booking prevention with concurrency-safe logic
- Bookings associated with authenticated users
- Clean integration on top of the provided starter codebase