Digital membership ID

Demo environment

Six test members, one for every result the system can produce. Nothing here touches a real sheet — open any page and it works.

Try it

Open the scanner on your phone, then scan the codes below off this screen.

Test codes

Each code carries a member in a different state. The chip tells you what the scanner should say — if it says anything else, something is wrong.

Running it

The scanner needs camera access, which browsers only grant over https or localhost. Opening the file directly will not work.

  1. Easiest: drag this whole folder into Cloudflare Pages as a direct upload. You get an https URL in under a minute and no build step. Demo mode is already on.
  2. Local instead: cd into the folder and run python3 -m http.server 8000, then open http://localhost:8000. Camera works on localhost.
  3. Open this page on a laptop, open scan.html on a phone, and scan the wall above off the screen.

Going live

Demo mode switches itself off the moment you set CONFIG.apiUrl in the four HTML files. After that it only returns with ?demo=1 on the URL, which is handy for client walkthroughs. Delete demo-data.js and its four script tags to remove it entirely. Setup steps for the live sheet are in the header of Code.gs.