Point the camera at a rotating QR. The QR is decoded and the expiry text beneath it is OCR'd — all in your browser. Updates upload to a shared session; copy the link to hand to a viewer.
The camera must run over https:// (or localhost) for the browser to grant
access. On desktop you can also test with the manual panel below.
OCR runs only when a QR is (re)detected, to stay light.
If OCR cannot parse an expiry, the scanner uses a 15-second expiry and renews it every 5 seconds while the QR remains visible.