Components
apps/winecellar/backend/app (FastAPI)
api/ routers (HTTP endpoints consumed by kiosk and workers)
services/ business logic (DB transactions, validation, computations)
models/ SQLAlchemy models (materials, stock, movements, bins, etc.)
core/ settings, DB session, startup hooks
static/ (if any)
apps/winecellar/frontend/qt_kiosk (Qt UI)
pages/ full-screen pages (Home/Bins/Inventory/Materials/Movements/Shelf)
widgets/ reusable widgets (status bar, common controls)
- Navigation via AppShell (standardized open_* helpers)
workers/wine_inventory/src/pince_shelf (Vision lane)
camera/ camera acquisition utilities (RTSP, snapshots)
vision/ image processing + rectification + detection + inference
roi/ shelf/cell ROI and masking utilities
cli/ command-line entrypoints (recommended to document as "entrypoints")
config/ settings and INI/env management
utils/ shared helper utilities (paths, IO, tuya, etc.)
shared/
shared/config/ global env + templates (incl. pince_shelf templates)
shared/run/ runtime state (pids, temp, etc.)
shared/logs/ logs
shared/icon/ assets