Skip to content

@qrcodesdk/browser

Open @qrcodesdk/browser on npmx.dev@qrcodesdk/browser version@qrcodesdk/browser install size@qrcodesdk/browser bundled size@qrcodesdk/browser download/mo@qrcodesdk/browser source code
works with
This package works with googlechrome
This package works with firefox
This package works with safari

@qrcodesdk/browser adds renderers that depend on browser DOM APIs. Use it with @qrcodesdk/core when your output should be an element created in the browser or a browser-triggered download.

Terminal window
npm install @qrcodesdk/core @qrcodesdk/browser
Need Renderer Return value
Insert a PNG-backed image QRCodeImageRenderer HTMLImageElement
Draw or export with Canvas APIs QRCodeCanvasRenderer HTMLCanvasElement
Trigger an SVG download QRCodeDownloadSVGRenderer void
Trigger a PNG download QRCodeDownloadImageRenderer void
import {QRCodeImageRenderer} from '@qrcodesdk/browser';
import {qrcode} from '@qrcodesdk/core';
const image = qrcode('https://qrcodesdk.dev').render(
QRCodeImageRenderer({
alt: 'QR code for qrcodesdk.dev',
ariaLabel: 'Scan to open qrcodesdk.dev',
}),
);
document.body.append(image);

QRCodeImageRenderer() returns an HTMLImageElement. Its src is a PNG data URL, and its width and height match the rendered QR code size.

Learn here more about using the library in the browser.

Each output has a dedicated reference for its return value, options, and browser constraints:

Follow Add a center image to prepare a CanvasImageSource, and Download or save for browser helpers and manual Canvas export.

Create these renderers only where document, Canvas, and browser download APIs are available. For server rendering, defer them until hydration or use the runtime-neutral SVG renderer from @qrcodesdk/core. Use @qrcodesdk/node when you need PNG bytes without a DOM.

@qrcodesdk/browser depends on browser DOM APIs and does not replace @qrcodesdk/core. The core package still provides qrcode(), matrix generation, builder options, and shared styling normalization.

import {
type QRCodeCanvasImageOptions,
type QRCodeCanvasOptions,
QRCodeCanvasRenderer,
type QRCodeCanvasRendererOptions,
QRCodeDownloadImageRenderer,
type QRCodeDownloadImageRendererOptions,
QRCodeDownloadSVGRenderer,
type QRCodeDownloadSVGRendererOptions,
type QRCodeImageOptions,
QRCodeImageRenderer,
type QRCodeImageRendererOptions,
} from '@qrcodesdk/browser';