Skip to main content

System Architecture

Purpose

This page documents the high-level technical architecture of the Maqsafy platform, including the main components, request flow, and integration boundaries.

Main Components

ComponentTechnologyPurpose
Backend APILaravel / PHPBusiness logic and API services
FrontendNuxtUser-facing web interface
DashboardLaravel / NuxtAdministrative and operational portals
DatabaseMySQLOperational data storage
Cache / QueueRedisCaching and background job processing
Web ServerNginxReverse proxy and request routing
ContainersDockerService isolation and deployment packaging

Logical Components

  • Web Dashboards: Admin, School Manager, Supplier, Operator
  • API Gateway / Routing Layer: authentication, routing, rate limiting, and API versioning
  • Core Services: identity, RBAC, schools, cafeterias, products, wallets, orders, refunds, reports, support
  • Data Layer: relational database, cache, and object storage
  • Integration Layer: SMS, payment gateway, email, and external services

Request Flow

  1. The user accesses the platform through the dashboard or application.
  2. The request reaches Nginx.
  3. Nginx routes the request to the appropriate backend or frontend service.
  4. The backend processes the business logic.
  5. The backend communicates with MySQL and Redis.
  6. Heavy tasks are dispatched to queues.
  7. Workers process queued jobs.
  8. The response is returned to the user.

Security Notes

  • Do not document real passwords.
  • Do not document real API keys.
  • Do not include production .env files.
  • Replace sensitive IPs, domains, and credentials with placeholders.