How mrpandaman56/cs450-event-manager-starter works
Event Manager is a React client backed by an Express gateway, separate user and event services, and PostgreSQL accessed through Prisma. The main workflow is account sign-in, event discovery or creation, then invitation response or registration; the client also supports hosted/attending event views and capacity-aware cancellation. The README documents gateway routing and shared database use; sampled service code shows request validation, session handling, and event/registration/invitation operations. Some frontend and service behavior is unsampled, so the graph avoids inferring its internal calls.
Main entry points: userService/app.ts User service · eventService/app.ts Event service · src/app.ts API gateway · schema.prisma PostgreSQL data
Components 11
Web client
- Event workspace
frontend/src/App.tsx
API routing
- API gateway
backend/src/app.ts
Accounts and sessions
- User service
backend/src/userService/app.ts - Session authentication
backend/src/middleware/auth.ts - Account validation
backend/src/schemas/authSchemas.ts
Event operations and persistence
- Body validation
backend/src/middleware/validateBody.ts - Event validation
backend/src/schemas/eventSchema.ts - Event service
backend/src/eventService/app.ts - PostgreSQL data
backend/prisma/schema.prisma - Demo event seed
backend/prisma/seed.ts
Other components
- Organizer or attendee
Connections 13
- Organizer or attendee → Event workspace: uses
README.md - Event workspace → API gateway: sends API requests
README.md - API gateway → User service: proxies auth
backend/src/app.ts - API gateway → Event service: proxies event requests
backend/src/app.ts - User service → Session authentication: uses session helpers
backend/src/userService/app.ts - User service → Account validation: validates account input
backend/src/userService/app.ts - User service → Body validation: validates request bodies
backend/src/userService/app.ts - Event service → Session authentication: requires authentication
backend/src/eventService/app.ts - Event service → Body validation: validates request bodies
backend/src/eventService/app.ts - Event service → Event validation: checks event input
backend/src/eventService/app.ts - User service → PostgreSQL data: reads and writes accounts
backend/src/userService/app.ts - Event service → PostgreSQL data: reads and writes events
backend/src/eventService/app.ts - Demo event seed → PostgreSQL data: seeds demo data