PaperColor dashboard worker The M5Stack PaperColor firmware GETs /render.json on each wake, interprets the Op[] with M5GFX, draws to the Spectra 6 panel, then deep-sleeps for nextWakeSec. The server owns the cadence. Read endpoints (no auth): GET /render.json -> { version, w, h, palette, nextWakeSec, ops } GET /preview -> HTML/SVG mockup at 400x600 (browser iteration) GET /manage -> HTML/JS UI for managing todos (asks for token) GET /todos -> list current todos as JSON GET /healthz -> ok Write endpoints (require Authorization: Bearer ): POST /todo -> body {"text":"...","id":"optional-stable-id"} DELETE /todo/:id -> remove one DELETE /todos -> clear all