Turn any text into a QR code, or read one back out of a picture.
A QR code is just a picture of some text: a link, a wifi password, a wallet
address, a phone number. Type the text and this draws the square; point the
reader at a photo or a screenshot of one and it tells you what the square says.
Both halves happen in this tab. No website draws the code for you and no
website is told what you scanned, which matters more than it sounds, because a
QR generator that phones home has seen every address and secret anyone made a
code of.
Is this actually private?
Nothing is uploaded. Static page, no endpoint, no account. The text you encode and the image you read are both handled in this tab; there is no server to send them to, which is a rule your browser enforces here, not a promise.
The encoder is the real standard. It is the whole of ISO/IEC 18004: the three data modes, Reed-Solomon error correction over GF(256), the version and block tables, the finder and alignment patterns, and the eight masks scored by the standard's own rules. It is written here, a few hundred lines, rather than pulled from a library or a web service.
The reader is written here too, so it works in every browser. Some browsers ship a barcode reader and most do not, so leaning on that would mean the reader worked for some visitors and quietly failed for the rest. Instead it decodes the pixels itself, the way any scanner does: find the three corner squares, read the grid, undo the mask, and let the error correction repair what a photograph smudges.
Error correction is a real choice. L through H trade size for damage tolerance: a higher level makes a denser code that still reads with more of it obscured, which is why a code with a logo in the middle uses one. M is a sensible default.
The camera never leaves the tab. If you scan with the camera, the video is read frame by frame here and nothing is recorded or sent. You can turn off your wifi and watch it keep working.
A clear image reads best. The reader is tuned for a code shown straight on: a screenshot, a scan, or a steady photo. A blurry one at a steep angle may not read, the same as any scanner.
Nothing here is for sale, nothing is tracked, and there is no account to make.
If something saved you an hour: 83TQcTwusSQ4WKbPQE5osrF3cR4GWe2zmcNWeozK6BSqHSaeLvjUVe476ouVwLKn1uVwEFcbJQvnme7W6dTV5SB93x45DEy
You can
check that address here before sending anything.