1. Users (Attendees & Customers)
What happens: Users register, log in, and interact with the platform. They browse available events and manage their personal accounts.
Role: They are the primary actors who initiate bookings to attend events.
2. Organizers
What happens: Organizers are the entities (or specialized user roles) responsible for creating, scheduling, and managing events.
Role: An organizer acts as the host, defining event details like capacity, dates, and locations, and overseeing the events they publish.
3. Events
What happens: Events are created and maintained by specific organizers. They hold all relevant information such as titles, descriptions, schedules, ticket availability, and pricing.
Role: They serve as the central hub that connects organizers to the users who want to attend.
4. Bookings (Attendee Registration)
What happens: When a user decides to attend an event, they create a booking. The system records this transaction, links the specific user to the target event, and updates available seating or ticket counts.
Role: It acts as the bridge between users and events, managing ticket confirmations and tracking attendance records.
Key Technical Flows
Authentication: The system handles secure authentication protocols to differentiate between standard users and event organizers, restricting administrative actions (like creating or editing events) to authorized hosts.
CRUD Operations: Each of these entities is supported by dedicated controllers, routes, and database queries to ensure seamless Create, Read, Update, and Delete operations across the platform.