V1: Next.js-App mit QR-Typ-Registry, Website-Generator und dynamischen Codes

- Erweiterbare Registry aller 15 QR-Typen; nur "Website" ist aktiv, die
  uebrigen erscheinen als Platzhalter mit Badge "Bald verfuegbar".
- defineQrType() kapselt Zod-Schema, Kodierung und Redirect-Ziel je Typ,
  sodass ein V2-Typ nur aus einem Registry-Eintrag plus Formular besteht.
- Serverseitige QR-Erzeugung (PNG/SVG) mit Farben, Groesse, Fehlerkorrektur
  und Rand; Live-Vorschau ueber /api/qr/preview.
- Dynamische Codes: Kurz-URL {BASE_URL}/r/{slug}, 302-Redirect mit
  Scan-Zaehler, CRUD unter /api/codes.
- Prisma 7 mit pg-Driver-Adapter und Initial-Migration fuer PostgreSQL.
- Deutsche Oberflaeche mit Tailwind CSS, helles Theme, responsiv.
This commit is contained in:
Florian Wilde
2026-08-13 15:54:47 +02:00
commit ad4cd92f8e
52 changed files with 12348 additions and 0 deletions
+24
View File
@@ -0,0 +1,24 @@
# ---------------------------------------------------------------------------
# QR-Code-Generator — Konfiguration
# Diese Datei nach ".env" kopieren und anpassen:
# cp .env.example .env
# ---------------------------------------------------------------------------
# Öffentliche Adresse, unter der die App erreichbar ist. Sie wird in
# dynamische QR-Codes einkodiert ({BASE_URL}/r/{slug}) und muss deshalb von
# den Geräten erreichbar sein, die den Code scannen.
# Im LAN z. B.: http://192.168.1.50:3000
BASE_URL=http://localhost:3000
# Host-Port, unter dem die App veröffentlicht wird (Port-Mapping APP_PORT:3000).
APP_PORT=3000
# --- PostgreSQL ------------------------------------------------------------
POSTGRES_USER=qrcode
POSTGRES_PASSWORD=bitte-aendern
POSTGRES_DB=qrcode
# Verbindungsstring der App zur Datenbank.
# "db" ist der Servicename aus docker-compose.yml — innerhalb des Compose-
# Netzwerks wird darüber die Datenbank aufgelöst.
DATABASE_URL=postgresql://qrcode:bitte-aendern@db:5432/qrcode?schema=public