# Bundled QR code library

Boriable bundles the browser API of `qrcode` (node-qrcode) version 1.5.4 under the MIT licence.

Upstream: https://github.com/soldair/node-qrcode
Tag: `v1.5.4`
Licence: `LICENSE-node-qrcode.txt`

## Browser bundle provenance

The upstream 1.5.4 npm package does not contain the precompiled `build/qrcode.js` file even though the upstream documentation refers to it. The Boriable bundle is therefore maintained from the previously published browser bundle with the upstream 1.5.4 browser-relevant source change applied to `lib/core/byte-data.js`: string byte encoding uses `TextEncoder().encode(data)` and non-string input uses `new Uint8Array(data)`. The optional Shift-JIS helper is not bundled or used by Boriable.

For a clean rebuild from upstream source, install the exact `qrcode@1.5.4` package and bundle `lib/browser.js` with a CommonJS-capable browser bundler (for example Browserify, Rollup with CommonJS support, or esbuild), exposing the resulting API as global `QRCode`. Boriable uses only `QRCode.toCanvas()`.
