context¶
wine_platform is a two-lane system: - apps/winecellar: kiosk UI + backend API for manual operations - workers/wine_inventory: autonomous vision pipeline for inventory reconciliation
flowchart LR
User((Operator))
Kiosk[Qt Kiosk<br/>apps/winecellar/frontend/qt_kiosk]
API[FastAPI Backend<br/>apps/winecellar/backend/app]
DB[(MariaDB on Synology NAS)]
NAS[(Synology NAS storage)]
Cam[Tapo IP Cameras<br/>RTSP]
Workers[Vision Workers<br/>workers/wine_inventory/src/pince_shelf]
Shared[Shared Config/Runtime<br/>shared/config + shared/run + shared/logs]
User -->|touchscreen| Kiosk
Kiosk -->|HTTP JSON| API
API --> DB
API --> NAS
Cam -->|snapshots/RTSP| Workers
Workers -->|inventory updates<br/>HTTP JSON| API
Workers --> NAS
Workers --> Shared
Kiosk --> Shared