Barcode Scanning

Read any barcode, fast, on any device

26 symbologies with one API and a pre-built scanning UI. Decoding runs in a Web Worker on the web and on Apple Vision or ML Kit natively, and nothing leaves the device.

Features

Pre-built UI

Viewfinder, highlights, success toast, torch, zoom and camera switching in one element.

Off the main thread

Frames are decoded in a Web Worker with WebAssembly, so your UI stays at 60 fps.

Smart duplicate filter

Report every frame, once per second, or once per session, with no custom debounce code.

Region of interest

Decode only what's inside the viewfinder, which is faster and avoids stray reads.

Private by default

Camera frames never leave the device, and there is no telemetry.

Typed results

The same Barcode object on every platform, with GS1 in human-readable form.

For developers

A few lines of code

Drop in the pre-built component or build your own UI on the same engine.

Supported symbologies

2D
QR, Micro QR, rMQR, Data Matrix, Aztec, PDF417, MicroPDF417, MaxiCode
Retail
EAN-13, EAN-8, UPC-A, UPC-E, ISBN, GS1 DataBar (Omni, Limited, Expanded)
Industrial
Code 128 / GS1-128, Code 39, Code 93, Codabar, ITF, ITF-14
Specialty
Code 32, PZN, Telepen, DX Film Edge
<qrgen-scanner symbologies="qr,ean13,code128" mode="continuous"></qrgen-scanner>
<script type="module">
  import "qrgen-sdk/elements";
  document.querySelector("qrgen-scanner").addEventListener("scan", (e) => {
    for (const b of e.detail.barcodes) console.log(b.symbologyName, b.data);
  });
</script>
Use cases

Where teams use barcode scanning

  • Point-of-sale and self-checkout
  • Price checks and product lookup
  • Ticket and boarding pass validation
  • Asset and equipment tracking
  • Healthcare medication checks
  • Warehouse receiving

Try barcode scanning now

Open the demo on your phone, or let your coding agent add it to your app.

Esc

Share this page

Barcode Scanning | QRGen

Star QRGen on GitHub Add a "Powered by QRGen" badge