2026-03-23 23:16:41 +08:00
2026-03-21 18:47:00 +08:00
2026-03-23 23:16:41 +08:00
2026-03-23 23:00:59 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-21 18:47:00 +08:00
2026-03-23 23:16:41 +08:00

Portable mini-program QR PoC

Requirements:
- Python 3
- Node.js

CLI usage:
1) Fetch server data and generate GIF
   python3 miniapp_qr_poc.py --member-id 114477 --json-out member_114477.json --gif-out member_114477.gif

2) Offline mode from an existing qr hex string
   python3 miniapp_qr_poc.py --qr A92205FA05FA000E3C9E107C23EE7F1234560031050C0000000000000000000000000000000000000000000000000000000000000000003A0000 --gif-out out.gif

Web usage:
1) Install dependencies
   python3 -m pip install -r requirements.txt

2) Start the web page
   python3 web_app.py

3) Open:
   http://127.0.0.1:8000

Docker usage:
1) Build
   docker build -t miniapp-qr-web .

2) Run
   docker run --rm -p 8000:8000 -e TZ=Asia/Shanghai -e MINIAPP_QR_TIMEZONE=Asia/Shanghai miniapp-qr-web

Or use compose:
   docker compose up --build

Features:
- Reads IDs from ./found_ids.txt
- Lets you select an ID from the page
- Calls the original API and generates the QR GIF in-browser
- Keeps the original CLI script available

Notes:
- The script looks for JS dependencies relative to itself under ./js/
- It reproduces the mini-program's getCommand(qr) wrapping and uses the bundled QR JS renderer
- Default timezone for QR payload generation is Asia/Shanghai; you can override it with MINIAPP_QR_TIMEZONE
Description
miniapp qr web ui + docker + gitea actions
Readme 71 KiB
Languages
JavaScript 73.3%
Python 17.9%
CSS 4.3%
HTML 3.6%
Dockerfile 0.9%