QR example provenance and decode check Generator: qrcode 1.5.4, the package imported by src/components/tools/QrCodeGenerator.tsx. PNG files come from QRCode.toBuffer with the same fields the component passes to QRCode.toDataURL: errorCorrectionLevel, margin, width, and colors expanded to 8-digit hex (#171313 becomes #171313ff). For short-url and long-guidance, those PNG bytes matched QRCode.toDataURL. SVG files come from QRCode.toString with type svg, which is what the component downloads. None of the SVG files contain a script element. Decoder: jsQR 1.4.0 on the PNG pixels. Each SVG was rasterized with @resvg/resvg-js to a 640 px wide PNG and passed to the same jsQR call. This is not a phone, camera, Safari, or print test. The text is original example copy. The files contain no personal data and no third-party artwork. short-url.png (1,976 bytes) and short-url.svg (1,246 bytes) Payload: https://kitlyapp.com/ Settings: 320 px, margin 4 modules, error correction M, foreground #171313, background #ffffff Symbol: version 2, 25 × 25 modules Both files decoded to: https://kitlyapp.com/ long-guidance.png (7,161 bytes) and long-guidance.svg (4,610 bytes) Payload: Kitly QR example: Verify the destination, keep strong contrast, and test the final printed size before publishing. Settings: 640 px, margin 4 modules, error correction Q, foreground #171313, background #ffffff Symbol: version 9, 53 × 53 modules Both files decoded to the full sentence above. The same sentence at level M is version 7, 45 × 45 modules. Those alternate files were not published. no-margin.png (1,928 bytes) and no-margin.svg (1,240 bytes) Payload: https://kitlyapp.com/ Settings: 320 px, margin 0 modules, error correction M, foreground #171313, background #ffffff Both files decoded to: https://kitlyapp.com/ DENSO WAVE still requires a four-module quiet zone around a printed symbol. Margin 0 is a supported control value, not a print recommendation. low-contrast.png (1,901 bytes) and low-contrast.svg (1,246 bytes) Payload: https://kitlyapp.com/ Settings: 320 px, margin 4 modules, error correction M, foreground #c4c4c4, background #ffffff jsQR recovered no payload from the PNG or from the rasterized SVG. level-h-1274-as.txt (1,274 bytes) Input: the lowercase letter a repeated 1,274 times. QRCode.toDataURL with errorCorrectionLevel H throws: The amount of data is too big to be stored in a QR Code. The same call with 1,273 a's creates a code. This matches the library's published byte-mode maximum at level H. It is not a limit for every 1,274-character string; uppercase alphanumeric content can fit more.