Tool4SaaS

QR Scanner

Scan QR codes from images or camera. Upload photo or use camera to decode text, URL or WiFi via jsQR locall. 100% private and offline.

QR Scanner

Upload an image containing a QR code or use your camera to scan. Decoding runs locally via a lazy-loaded jsQR library (dynamic import).

No image loaded. Choose an image or start the camera to scan a QR code.

Decoded text

No QR code decoded yet. Upload a QR image or capture from camera.

Decoding: draw to canvas → getImageData → dynamic import("jsqr") → jsQR(data, width, height). If jsQR is missing, an alert with "jsQR not installed, install via npm install jsqr" is shown. Camera uses getUserMedia with permission handling; auto-scan via requestAnimationFrame and manual Capture button.

More Images & Design

About the author

Written and maintained by the Tool4SaaS team. Every tool runs locally in your browser and is tested in-house for accuracy. Last updated: .

Frequently asked questions

File upload works fully offline; camera requires permission and uses getUserMedia.

No, decoding is via canvas locally after lazy loading jsQR.

Yes, it is free, works offline in your browser, and your data never leaves your device.

How to use QR Scanner

  1. Upload: Upload QR image or start camera.
  2. Scan: Decode automatically.
  3. Copy: Copy decoded text or open link.