I built QR Forge — a fully client-side QR toolkit with Next.js 16
Hi everyone 👋
I recently launched QR Forge, a free QR code generator built with Next.js 16 and deployed on Vercel.
The main idea is simple:
Keep the core QR workflow entirely in the browser.
QR payloads, CSV files, image processing, SVG generation, and batch ZIP packaging are processed client-side. No account is required.
Current features
- Custom QR colors, dots, corners, margins, and logos
- PNG, JPEG, WEBP, and SVG export
- Transparent PNG export
- Restaurant, WiFi, and Business Card templates
- Template preview and one-click apply
- Print Mode with bleed and registration marks
- Self-contained SVG export
- Batch QR generation from CSV
- Client-side ZIP packaging
Stack
- Next.js 16.3.5
- React 19
- TypeScript
- Tailwind CSS
- qr-code-styling
- fflate
- Vercel
One of the more interesting bugs I found during development involved QR margins. Different margin values could produce identical exported geometry because of module-size rounding. Disabling that rounding and sharing the same rendering options between preview and export fixed the issue.
For batch generation, CSV parsing, QR rendering, and ZIP creation all happen locally in the browser.
I'd appreciate feedback on the generator UX, templates, export quality, Print Mode, Batch CSV workflow, accessibility, or anything that feels confusing.