1.4 KiB
1.4 KiB
SecureCam codebase architecture
flowchart LR
CAMERA["Camera device
Mobile camera app / browser simulator"]:::client
USER["User devices
Web app / mobile app"]:::client
subgraph PLATFORM["SecureCam platform"]
BACKEND["Backend service
• authentication
• device coordination
• live stream control
• motion events
• recordings access"]:::backend
end
DATA["Core data layer
PostgreSQL"]:::data
MEDIA["Media storage
MinIO / S3-compatible object storage"]:::data
NOTIFY["Notifications
push + in-app activity updates"]:::service
CAMERA -->|"motion, stream, recordings"| BACKEND
USER -->|"auth, viewing, control"| BACKEND
BACKEND -->|"app state, users, devices, events"| DATA
BACKEND -->|"video and recording assets"| MEDIA
BACKEND -->|"alerts and activity fan-out"| NOTIFY
NOTIFY --> USER
classDef client fill:#e8f1ff,stroke:#3b82f6,stroke-width:2px,color:#111827;
classDef backend fill:#ecfdf3,stroke:#16a34a,stroke-width:2px,color:#111827;
classDef data fill:#fff7e8,stroke:#f59e0b,stroke-width:2px,color:#111827;
classDef service fill:#f3e8ff,stroke:#9333ea,stroke-width:2px,color:#111827;
Notes
- This version is intentionally high level.
- It treats the web app, mobile app, and simulator as client surfaces around one backend platform.
- Internal backend modules such as routes, workers, realtime gateway, and media scaffolding are abstracted into a single service block.