A self-hosted Flask web app to generate QR codes for URLs, SEPA payments, WiFi, vCards and free text
1.1K

Flask-based QR code generator with multi-language support (nl, en, fr, de).
| URL | SEPA | WiFi |
|---|---|---|
![]() | ![]() | ![]() |
| vCard | Text | Admin |
|---|---|---|
![]() | ![]() | ![]() |
| Component | Version |
|---|---|
| Python | 3.13.5-slim |
| Type | Fields |
|---|---|
| URL | URL |
| SEPA | Recipient name, IBAN, Amount, BIC, Message |
| WiFi | SSID, Password, Security, Hidden |
| vCard | Name, Company, Job title, Phone, Email, Website, Street, City, Postal code, Country, Photo |
| Text | Free text |
docker run -p 5000:5000 -v qr-data:/app/data geertmeersman/qr-generator:latest
Or with Docker Compose:
services:
qr-web:
image: geertmeersman/qr-generator:latest
container_name: qr-web
ports:
- "5000:5000"
volumes:
- qr-data:/app/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5000/health"]
interval: 30s
timeout: 5s
retries: 3
restart: unless-stopped
volumes:
qr-data:
Open http://localhost:5000 in your browser.
| Path | Description |
|---|---|
/vcard/<id> | Public vCard page with download button |
/vcard/<id>/download | Direct .vcf download |
/admin | Admin dashboard (login required) |
/admin/setup | First-time admin account setup |
Mount
/app/datato persist vCards and the admin database.
Rebuilt automatically whenever the upstream python:3.13-slim image is updated.
© 2026 Geert Meersman — Licensed under the MIT License — Releases
Content type
Image
Digest
sha256:460083d09…
Size
73.6 MB
Last updated
about 2 hours ago
docker pull geertmeersman/qr-generator