How 2110503-cedt68/be-project-68-soijuboy works
This is an Express API for interview-session booking, with user registration/login, role-based access, company and session management, and booking rules. The main workflow is a user authenticating, browsing sessions, and creating or managing bookings; bookings update session availability. The README provides no architecture details, and company/booking route implementations were not sampled, so their wiring is not asserted.
Main entry points: server.js Express server · auth.js Auth routes · routes/interviewsession.js Session routes · controllers/interviewsession.js Session controller
Components 17
HTTP API
- Express server
server.js - Auth routes
routes/auth.js - Company routes
routes/company.js - Session routes
routes/interviewsession.js - Booking routes
routes/booking.js - Company controller
controllers/company.js
Identity and Access
- Auth controller
controllers/auth.js - Auth middleware
middleware/auth.js - User model
models/User.js
Booking Domain
- Session controller
controllers/interviewsession.js - Booking controller
controllers/booking.js
Persistence
- Company model
models/company.js - Session model
models/interviewsession.js - Booking model
models/booking.js - DB connector
config/db.js - MongoDB
Other components
- API client
Connections 17
- API client → Express server: sends requests
- Express server → DB connector: connects
- DB connector → MongoDB: connects
- Express server → Auth routes: mounts
- Express server → Company routes: mounts
- Express server → Session routes: mounts
- Express server → Booking routes: mounts
- Auth routes → Auth controller: dispatches
- Auth routes → Auth middleware: protects
- Session routes → Session controller: dispatches
- Session routes → Auth middleware: protects
- Auth middleware → User model: looks up
- Auth controller → User model: reads and creates
- Session controller → Session model: reads and writes
- Booking controller → Booking model: reads and writes
- Booking controller → Session model: checks and updates
- Session controller → Company model: populates company