QF QRForge

How QRForge works

QRForge is designed to run at Rp0 forever-while-hosted. Here's exactly how, and where the honest limits are.

Architecture

A QR code encoded with a destination directly baked in can never change. QRForge instead encodes a link back to itself — /q/<ID> — and looks up the real destination at scan time. That lookup needs somewhere to live that's reachable from any device, not just the one that made the QR. That rules out browser-only storage (localStorage/IndexedDB) as the source of truth for redirects.

QRForge is built on:

We evaluated the alternatives honestly before landing here:

Honest limitations

We will not tell you this is "100% permanent forever" — that isn't true of any free service. What we can say:

Security

Destination URLs are restricted to http:// and https://javascript:, data:, and file: links are rejected both in the browser and again on the server. Edit keys are stored server-side only as a salted hash, never in plaintext. No password, API key, or admin secret is ever placed in the frontend code.