Highlights
What I built
- Queue-based cloud-to-hardware architecture avoids exposing Pi directly to internet.
- Command claiming flow reduces duplicate execution risk under polling.
- Status lifecycle gives observability and post-failure diagnosis.
- Includes deployment/runtime details; not just code that runs in dev.
- `app/page.tsx`: command UI and Supabase insert flow for bin-specific dispense actions.
- `pi_worker.py`: queue consumer loop, command claiming, action parsing, command status updates.