QR codes that never leave your browser.
Type a link and the QR code appears as you type. Download it as a PNG or a vector SVG. Nothing is uploaded, nothing is tracked and there is nothing to install.
What you get
-
Private by construction
The QR code is computed in your browser. The page sends a strict Content Security Policy that forbids any network request, so it could not upload what you type even by mistake.
-
Instant
The code updates on every keystroke. There is no generate button and no waiting.
-
PNG and SVG
Download a 500 px or 1000 px PNG, or a vector SVG that stays sharp at any size, for print or signage.
-
Made to be scanned
Choose the error correction level, the margin and the colors. LadyQR warns you about low contrast and inverted colors, the two most common reasons a code fails to scan.
-
Small and dependency-free
It has its own QR encoder, with no libraries and no build step. PHP only generates the page, so it runs on the cheapest shared hosting.
-
Accessible and translatable
High-contrast borders, full keyboard use, light and dark themes. Translations work like WordPress, with standard
.pofiles. English and Spanish are included.
One screen, one job
A text field, the QR code and a download button. Everything else is one click away in the settings.
Don't take our word for it
Privacy claims are cheap, so LadyQR makes them easy to check.
- Open the live editor and your browser's developer tools, on the Network tab.
- Type anything. No request is made: the page can only load its own files.
- Look at the page's policy.
connect-src 'none'tells the browser to refuse any connection, whatever the code tries to do:
default-src 'none'; script-src 'self'; style-src 'self'; img-src 'self';
connect-src 'none'; base-uri 'none'; form-action 'none'
The encoder is about 400 lines in assets/js/qr.js, and the only thing the page remembers is your settings, in your own browser. What you type is never stored.
Run your own
LadyQR is a handful of files. It needs a web server that can run PHP (Apache is the target) and nothing else, not even a database.
- Download the repository or clone it.
- Upload it to the root of your site.
- Optionally, copy
ladyqr-config.sample.phptoladyqr-config.phpand set the interface language.
The README has the details, and DESIGN.md explains how it looks and why.
Where it is going
- Done: the QR code generator, with PNG and SVG, settings, warnings, dark mode and translations.
- Next: test it on a real 100 MB shared hosting plan, then add a private, single-user URL shortener that writes its redirects into
.htaccessso Apache serves them without running PHP. - Later: installation guide and a release you can upload by FTP.
The full plan is in docs/PLAN.md.