How lunaboy65/meehongpa-booking works
RoomDesk is a meeting-room reservation and administration product: users find rooms, create bookings, and check in; administrators manage rooms, users, approvals, and analytics. The client separates UI pages, domain services, and an HTTP client; the FastAPI server handles domain endpoints using schemas, models, database sessions, and authentication utilities. The shown excerpts establish service-to-client and server-internal dependencies. Client-to-server endpoint wiring is apparent from matching routes, but no single cited excerpt shows both sides, so those links are marked unverified.
Main entry points: main.py FastAPI endpoints · api-client.ts HTTP client · database.py Database sessions · booking.service.ts Booking service
Components 19
Client experience
- Booking pages
client/src/app/bookings - Room pages
client/src/app/rooms - Auth pages
client/src/app/(auth) - Admin pages
client/src/app/admin - Profile page
client/src/app/profile/page.tsx
Client services
- Booking service
client/src/services/booking.service.ts - Room service
client/src/services/room.service.ts - Auth service
client/src/services/auth.service.ts - User service
client/src/services/user.service.ts - Analytics service
client/src/services/analytics.service.ts - HTTP client
client/src/services/api-client.ts
Server API
- FastAPI endpoints
server/main.py
Server core
- Request schemas
server/schemas.py - Domain models
server/models.py - Token utilities
server/auth_utils.py - Database sessions
server/database.py
Other components
- Room user
- Administrator
- Database
Connections 15
- Booking service → HTTP client: sends requests
client/src/services/booking.service.ts - Room service → HTTP client: sends requests
client/src/services/room.service.ts - Auth service → HTTP client: sends requests
client/src/services/auth.service.ts - User service → HTTP client: sends requests
client/src/services/user.service.ts - HTTP client → FastAPI endpoints: calls API
- FastAPI endpoints → Database sessions: opens sessions
server/main.py - FastAPI endpoints → Domain models: uses models
server/main.py - FastAPI endpoints → Token utilities: uses tokens
server/main.py - FastAPI endpoints → Request schemas: uses schemas
server/main.py - Database sessions → Database: connects
- Room user → Booking pages: uses
- Room user → Room pages: browses
- Room user → Auth pages: authenticates
- Administrator → Admin pages: administers
- Room user → Profile page: manages profile