System Map — Top-Level Overview
How to read this map
Section titled “How to read this map”Each box on the canvas is one layer of UnitSync — a group of related components that share a runtime or a responsibility. The arrows show how layers depend on each other: an arrow from A to B means “A calls B” or “A sends data to B.”
- Pan + zoom with mouse / trackpad
- Click a layer to navigate to that layer’s detail page
- Click an actor (Resident, Operator) to see who they are
- Use the minimap in the bottom-right to navigate when zoomed in
The diagram is generated from a single typed model in the repo
(src/data/system-model.ts). When the platform changes in a way that affects
the layer count, dependencies, or responsibilities, the model updates and the
canvas re-renders — there is no manual diagram-editing step.
What each layer contains
Section titled “What each layer contains”- Resident — the human resident interacting via WhatsApp
- WhatsApp — Meta Cloud API + inbound webhook + outbound message abstraction
- Guard PWA — the always-online browser app guards use at the gate
- Community Admin Console — per-society admin web app (Tailwind + shadcn/ui)
- Platform Admin — UnitSync internal operator console
- Backend — Fastify 5 API, route plugins, ~238 services, scheduled workers
- Data — Postgres 16, Redis 7 (sessions + stagger queue), S3
- External — Razorpay, ERPNext, MSG91, AWS RDS/ElastiCache/S3, ngrok
For finer-grained internal structure within a layer, drill in by clicking the layer on the canvas above or selecting from the sidebar.