Architecture¶
Kamerplanter follows a strict 5-layer architecture with polyglot persistence.
Architecture overview¶
flowchart TB
subgraph "Client Layer"
Web["Web App (React 19)"]
end
subgraph "API Layer"
FastAPI["FastAPI Backend"]
Traefik["Traefik Ingress"]
end
subgraph "Business Logic"
Services["Domain Services"]
Engines["Domain Engines"]
end
subgraph "Data Layer"
ArangoDB[("ArangoDB<br/>Documents + Graph")]
Valkey[("Valkey<br/>Cache + Broker")]
TimescaleDB[("TimescaleDB<br/>Time-series")]
end
Web --> Traefik
Traefik --> FastAPI
FastAPI --> Services
Services --> Engines
Services --> ArangoDB
Services --> Valkey
Services --> TimescaleDB In This Section¶
- Overview — Layer model and design principles
- Backend — FastAPI, Celery, domain models
- Frontend — React, Redux, MUI
- Database — ArangoDB collections and graph schema
- Infrastructure — Kubernetes, Helm, networking