diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..6ea42bb --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,66 @@ +# Changelog + +Alle nennenswerten Änderungen an diesem Projekt werden hier dokumentiert. +Format angelehnt an [Keep a Changelog](https://keepachangelog.com/de/1.1.0/), +Versionierung nach [Semantic Versioning](https://semver.org/lang/de/). + +## [1.2.0] – 2026-07-18 + +### Hinzugefügt +- „Heute"-Button in der Wochennavigation (öffentliche Speisekarte und + Wochenplan-Editor) +- Mobile Ansicht der öffentlichen Speisekarte: umschaltbar zwischen + Tag (Standard) und Woche, unabhängig von der Desktop-Tabelle +- Allergene und Zusatzstoffe wieder pro Gericht auswählbar (Chip-Auswahl + im Formular) und als kleine Kürzel neben dem Gerichtnamen sichtbar – + in Speisekarte, mobiler Ansicht und Wochenplan-Editor +- Passwort-Wiederholung beim Anlegen neuer Benutzer und beim optionalen + Passwort-Reset +- Passwort-Anmeldung pro Konto deaktivierbar (nur wenn mindestens ein + Passkey registriert ist), Durchsetzung im Login-Flow +- `SITE_TITLE`-Umgebungsvariable für Browser-Tab-Titel und Überschrift + ohne Logo +- Austauschbares Favicon über den Admin-Design-Bereich + +### Geändert +- Gemeinsame Navigation für Kantinen- und Admin-Bereich statt zwei + getrennter Menüs +- Live-Suche bei den Gerichten +- Mehrfachauswahl zum Batch-Löschen von Gerichten +- App erreichbar auf `0.0.0.0` statt nur `localhost` (Docker und + nativer Betrieb) +- Projekt umbenannt von „Speisekarte“ zu „canteen-menu“ (Docker-, + npm- und Supabase-Namen; deutsche In-App-Texte unverändert) +- Öffentliche URL über `APP_URL` konfigurierbar (CSRF-Origin-Check + hinter Reverse-Proxy, Passkey-Domain) + +### Behoben +- Next.js band `app/favicon.ico` zusätzlich zu einem dynamisch + gesetzten Favicon ein – Favicon wird jetzt immer explizit gesetzt +- Weiterleitungen (Logout, Zugriffsschutz) übernahmen nach der + 0.0.0.0-Bindung fälschlich die Server-Adresse statt des + aufgerufenen Hosts + +## [1.1.0] – 2026-07-17 + +### Hinzugefügt +- Versionsnummer im Fußbereich jeder Seite + +## [1.0.0] – 2026-07-17 + +Erste vollständige Version. + +### Hinzugefügt +- Öffentliche Speisekarte ohne Login: Wochenansicht Mo–Fr mit den + Bereichen Brotzeit, Mittagessen, Mittagessen vegetarisch und Suppe; + Wochen-Navigation; Logo zentriert; Allergene & Zusatzstoffe unterhalb + der Karte +- Anmeldung mit E-Mail/Passwort oder Passkey +- Kantinen-Bereich: Gerichte anlegen/bearbeiten/löschen, Wochenplan + pflegen, globale Allergen-/Zusatzstofflisten verwalten +- Admin-Bereich: Benutzerverwaltung, Farbgebung, Logo-Upload +- Eigenes Konto verwalten: Name, E-Mail, Passwort, Passkeys +- Row-Level-Security, HTTP-Security-Header, CSRF-Origin-Check +- Docker-Setup (App-Image, lokale PostgreSQL-Kopie, Dev-Profil ohne + lokales Node.js) +- Lokale PostgreSQL-Kopie mit Sync-Skript diff --git a/README.md b/README.md index 5fe0cf0..01f5d73 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,9 @@ Admin-Bereich für Benutzerverwaltung und Branding. **Stack:** Next.js 16 (App Router, TypeScript, Tailwind CSS) · Supabase (PostgreSQL, Auth inkl. Passkeys, Storage, Row Level Security) +Änderungen je Version stehen in [CHANGELOG.md](CHANGELOG.md), Git-Tags +markieren die jeweiligen Versionsstände (`git tag`). + ## Funktionen | Bereich | Funktionen |