QR codes look like magic — a grid of black and white squares that encodes anything from a URL to a business card. But how do they actually work? I decided to find out the hard way: implement the full QR Code Model 2 algorithm in vanilla JavaScript, zero external dependencies.

The result: QR Code Generator — a free, client-side tool that generates QR codes from any text or URL.

Why No Libraries?

I maintain a collection of browser-only developer tools at devnestio. Every tool has the same rule: zero external dependencies. No npm installs, no CDN scripts, no servers.

For most tools (JSON diff, Base64 encoder, UUID generator) that's easy. QR codes are different. The spec is a 126-page ISO document. Most developers just npm install qrcode and call it a day.