QR scanner
Decodes QR from a picture or live camera. Understands links, Wi-Fi configs, vCard contacts, coordinates and plain text.
Decodes QR code content from a picture (PNG, JPG, WebP) or live camera frames. A paired tool to the QR generator in the same category. The decoder is jsQR (Apache-2.0, ported from ZXing); it supports all QR versions (1–40) and all encoding modes. The file mode runs in “attemptBoth” — it catches inverted codes too (a white QR on a dark background); the camera mode uses the fast non-inverted variant, important for real-time. Once decoded, the payload is auto-classified by format: http/https links come with a “verify the domain before opening” warning (QR is a common phishing vector); Wi-Fi configs are parsed into separate SSID / auth type / password fields with a copy-password button; vCard contacts are split into name / phone / email / organization with a “Download .vcf” button; geo: coordinates link to OpenStreetMap (not Google Maps, to keep location out of an unnecessary service); mailto / tel / sms get an “Open in the corresponding app” button; plain text comes with a “Copy” button. Camera access requires HTTPS (we have it) and a one-off permission from the user — frames are processed locally, never uploaded. The jsQR decoder itself (~65 KB) is loaded lazily only on the first scan, the rest of the site does not pay that cost. Processing happens in the browser, the file or camera stream never leaves your device.