How ayoonb-star/dbms-final-2026-labadahub works
This repository contains a laundry-service backend for account access, service and time-slot browsing, customer bookings, and staff order-status updates, alongside a mobile Expo starter UI. The backend routes are mounted by the Express app and query a MySQL pool; order booking also generates a QR code. The README provides no capability details, and the sampled mobile screens show no API integration, so the mobile UI is shown separately rather than connected to backend results. Relationships below are limited to source-index references and shown calls.
Main entry points: db.js MySQL pool · app.js Express API · orders.js Order handling · app-tabs.web.tsx Web tab navigation
Components 16
API runtime
- Express API
backend/src/app.js - MySQL pool
backend/src/config/db.js - Initial data seeding
backend/src/seed.js
Identity and access
- Account routes
backend/src/routes/auth.js - JWT and roles
backend/src/middleware/auth.js
Services and slots
- Services and slots
backend/src/routes/services.js
Order lifecycle
- Order handling
backend/src/routes/orders.js
Mobile starter UI
- Home and explore screens
mobile/src/app - Router layout
mobile/src/app/_layout.tsx - Web tab navigation
mobile/src/components/app-tabs.web.tsx - Themed text
mobile/src/components/themed-text.tsx - Themed view
mobile/src/components/themed-view.tsx - External link
mobile/src/components/external-link.tsx
Other components
- API client
- MySQL database
- QR code generator
Connections 16
- API client → Express API: sends requests
backend/src/app.js - Express API → Account routes: mounts routes
backend/src/app.js - Express API → Services and slots: mounts routes
backend/src/app.js - Express API → Order handling: mounts routes
backend/src/app.js - Account routes → MySQL pool: queries
backend/src/routes/auth.js - Services and slots → MySQL pool: queries
backend/src/routes/services.js - Services and slots → JWT and roles: checks access
backend/src/routes/services.js - Order handling → MySQL pool: queries
backend/src/routes/orders.js - Order handling → JWT and roles: checks access
backend/src/routes/orders.js - MySQL pool → MySQL database: opens pool
backend/src/config/db.js - Initial data seeding → MySQL pool: inserts seed data
backend/src/seed.js - Order handling → QR code generator: generates QR
backend/src/routes/orders.js - Router layout → Home and explore screens: hosts screens
- Web tab navigation → Themed text: renders
mobile/src/components/app-tabs.web.tsx - Web tab navigation → Themed view: renders
mobile/src/components/app-tabs.web.tsx - Web tab navigation → External link: renders
mobile/src/components/app-tabs.web.tsx