@zxkit/qrix
QR codes as SVG, with a logo in the middle.
A lightweight React component that renders crisp QR codes at any size, plus utilities to download them as PNG or SVG and copy them to the clipboard.
Playground
Try it live.
Tweak the QR below, then download it or copy it as an image.
Render
qr-code.tsx
One component. Every knob from the playground above is a prop.
import { QRCodeSVG } from '@zxkit/qrix'
<QRCodeSVG
value='https://example.com'
size={256}
fgColor='#262626'
logoUrl='/logo.svg'
logoSize={20}
quietZone={4}
errorCorrectionLevel='M'
/>Utilities
actions.ts
Download or copy the same QR you render — no canvas wiring on your side.
import {
copyQRCodeToClipboard,
downloadQRCodePNG,
downloadQRCodeSVG,
} from '@zxkit/qrix'
await downloadQRCodePNG({ value, size, fgColor, logoUrl })
await downloadQRCodeSVG({ value, size, fgColor, logoUrl })
await copyQRCodeToClipboard({ value, size, fgColor, logoUrl })- SVG-based
- Crisp at any size, styleable with className and style like any element.
- Logo support
- Embed an image or SVG in the center, with size and padding control.
- Error correction
- Levels L, M, Q, and H — raise it when a logo covers more modules.
- Utilities included
- Download as PNG or SVG, or copy the QR straight to the clipboard.
- Lightweight
- Minimal dependencies, React 18 and 19.