Skip to content

Architecture

Previous: Features
Next: Data Model

Smart Estate is built as a backend-centered architecture where ticket/SLA state is owned by PostgreSQL-backed FastAPI services, with dashboard and mobile clients as consumers.

1) Runtime components

Backend (smart-estate-backend)

  • FastAPI app with routers for auth, tickets, chat, AI, admin, predictions.
  • Background scheduler for periodic reprioritization/SLA monitoring tasks.
  • WebSocket notification channel for real-time updates.
  • AI runtime integration:
  • OpenAI vision-first flow when configured.
  • Secondary local model paths (YOLO/text models) when available.

Database (PostgreSQL)

  • System of record for users, buildings, apartments, tickets, messages, media, AI logs, SLA settings, and audit events.

Dashboard (smart-estate-dashboard)

  • Admin/operations/manager web UI using REST + WebSocket.
  • Includes jobs table, metrics cards/charts, user/property/technician admin, system config, and audit views.

Mobile apps

  • Tenant app: core integration supports ticketing, chat, and account workflows.
  • Technician app: strong integration for field workflow endpoints.

2) API mount behavior

  • Most routers are mounted both at root and /api for client compatibility.
  • Predictions routes are mounted under /api only.

3) Main processing flow

Client request (dashboard/mobile)
  -> FastAPI route handler
  -> business logic + DB operations
  -> optional AI classification / dispatch logic
  -> persisted ticket/message/audit updates
  -> WebSocket notification fanout
Ticket with media
  -> /api/chat or /api/upload-image
  -> text + vision analysis
  -> fusion result
  -> ticket updates + AI decision log write
  -> SLA deadlines + assignment decisions

4) Deployment topology

smart-estate compose stack runs:

  • postgres
  • backend
  • dashboard

with persistent mounts for uploads and model artifacts.

Dashboard architecture touchpoint (web UI over backend services) Caption: Dashboard is one of multiple clients over the same backend system-of-record.

Previous: Features
Next: Data Model