Finder, timing, alignment, format, and version patterns are reserved landmarks. They help a camera lock onto the QR code before it reads your message.
Learn, create, and develop QR codes.
QR Peach helps you understand how QR codes work, create and debug real QR payloads, and develop your own applications with qrpeach.js.
What a QR code is
A QR code is a square grid of dark and light modules. Fixed patterns help scanners find the symbol and orient it correctly. The remaining open modules carry your payload plus error-correction data so the message can still scan when part of the symbol is damaged.
Your text, URL, Wi-Fi settings, or contact card turns into bytes and bits. Those bits are written into the remaining modules in a defined zig-zag placement order.
QR codes also store Reed-Solomon error-correction codewords. That redundancy gives scanners a chance to recover the payload even when some modules are missing or obscured.
Learn how QR codes are created
Follow the full path from payload text to bytes, bitstream structure, error correction, and final module placement.
Create and debug QR codes
Build payloads, inspect the encoding steps, and use the Create page to troubleshoot what ends up inside the symbol.
Develop with QR Peach
Use qrpeach.js as the reusable QR engine behind your own tools, demos, and production workflows.
Open Source
Explore the source on GitHub, use qrpeach.js in your own work, and follow the project.