{
  "appName": "Infoscreen-Management",
  "version": "2026.1.0-alpha.14",
  "copyright": "© 2026 Third-Age-Applications",
  "supportContact": "support@third-age-applications.com",
  "description": "Eine zentrale Verwaltungsoberfläche für digitale Informationsbildschirme.",
  "techStack": {
  "Frontend": "React, Vite, TypeScript, Syncfusion UI Components (Material 3)",
    "Backend": "Python (Flask), SQLAlchemy",
    "Database": "MariaDB",
    "Realtime": "Mosquitto (MQTT)",
    "Containerization": "Docker"
  },
  "openSourceComponents": {
    "frontend": [
      { "name": "React", "license": "MIT" },
      { "name": "Vite", "license": "MIT" },
      { "name": "Lucide Icons", "license": "ISC" },
      { "name": "Syncfusion UI Components", "license": "Kommerziell / Community" }
    ],
    "backend": [
      { "name": "Flask", "license": "BSD" },
      { "name": "SQLAlchemy", "license": "MIT" },
      { "name": "Paho-MQTT", "license": "EPL/EDL" },
      { "name": "Alembic", "license": "MIT" }
    ]
  },
  "buildInfo": {
    "buildDate": "2025-12-29T12:00:00Z",
    "commitId": "9f2ae8b44c3a"
  },
  "changelog": [
    {
      "version": "2026.1.0-alpha.14",
      "date": "2026-01-28",
      "changes": [
        "✨ UI: Neue 'Ressourcen'-Seite mit Timeline-Ansicht zeigt aktive Events für alle Raumgruppen parallel.",
        "📊 Ressourcen: Kompakte Zeitachsen-Darstellung.",
        "🎯 Ressourcen: Zeigt aktuell laufende Events mit Typ, Titel und Zeitfenster in Echtzeit.",
        "🔄 Ressourcen: Gruppensortierung anpassbar mit visueller Reihenfolgen-Verwaltung.",
        "🎨 Ressourcen: Farbcodierte Event-Balken entsprechend dem Gruppen-Theme."
      ]
    },
    {
      "version": "2025.1.0-alpha.13",
      "date": "2025-12-29",
      "changes": [
        "👥 UI: Neue 'Benutzer'-Seite mit vollständiger Benutzerverwaltung (CRUD) für Admins und Superadmins.",
        "🔐 Benutzer-Seite: Sortierbare Gitter-Tabelle mit Benutzer-ID, Benutzername und Rolle; 20 Einträge pro Seite.",
        "📊 Benutzer-Seite: Statistik-Karten zeigen Gesamtanzahl, aktive und inaktive Benutzer.",
        "➕ Benutzer-Seite: Dialog zum Erstellen neuer Benutzer (Benutzername, Passwort, Rolle, Status).",
        "✏️ Benutzer-Seite: Dialog zum Bearbeiten von Benutzer-Details mit Schutz vor Selbst-Änderungen.",
        "🔑 Benutzer-Seite: Dialog zum Zurücksetzen von Passwörtern durch Admins (ohne alte Passwort-Anfrage).",
        "❌ Benutzer-Seite: Dialog zum Löschen von Benutzern (nur für Superadmins; verhindert Selbst-Löschung).",
        "📋 Benutzer-Seite: Details-Modal zeigt Audit-Informationen (letzte Anmeldung, Passwort-Änderung, Abmeldungen).",
        "🎨 Benutzer-Seite: Rollen-Abzeichen mit Farb-Kodierung (Benutzer: grau, Editor: blau, Admin: grün, Superadmin: rot).",
        "🔒 Header-Menü: Neue 'Passwort ändern'-Option im Benutzer-Dropdown für Selbstbedienung (alle Benutzer).",
        "🔐 Passwort-Dialog: Authentifizierung mit aktuellem Passwort erforderlich (min. 6 Zeichen für neues Passwort).",
        "🎯 Rollenbasiert: Menu-Einträge werden basierend auf Benutzer-Rolle gefiltert (z.B. 'Benutzer' nur für Admin+)."
      ]
    },
    {
      "version": "2025.1.0-alpha.12",
      "date": "2025-11-27",
      "changes": [
        "✨ Dashboard: Komplett überarbeitetes Dashboard mit Karten-Design für alle Raumgruppen.",
        "📊 Dashboard: Globale Statistik-Übersicht zeigt Gesamt-Infoscreens, Online/Offline-Anzahl und Warnungen.",
        "🔍 Dashboard: Filter-Buttons (Alle, Online, Offline, Warnungen) mit dynamischen Zählern.",
        "🎯 Dashboard: Anzeige des aktuell laufenden Events pro Gruppe (Titel, Typ, Datum, Uhrzeit in lokaler Zeitzone).",
        "📈 Dashboard: Farbcodierte Health-Bars zeigen Online/Offline-Verhältnis je Gruppe.",
        "👥 Dashboard: Ausklappbare Client-Details mit 'Zeit seit letztem Lebenszeichen' (z.B. 'vor 5 Min.').",
        "🔄 Dashboard: Sammel-Neustart-Funktion für alle offline Clients einer Gruppe.",
        "⏱️ Dashboard: Auto-Aktualisierung alle 15 Sekunden; manueller Aktualisierungs-Button verfügbar."
      ]
    },
    {
      "version": "2025.1.0-alpha.11",
      "date": "2025-11-05",
      "changes": [
        "🎬 Client: Clients können jetzt Video-Events aus dem Terminplaner abspielen (Streaming mit Seek via Byte-Range).",
        "🧭 Einstellungen: Neues verschachteltes Tab-Layout mit kontrollierter Tab-Auswahl (keine Sprünge in Unter-Tabs).",
        "📅 Einstellungen › Akademischer Kalender: ‘Schulferien Import’ und ‘Liste’ zusammengeführt in ‘📥 Import & Liste’.",
        "🗓️ Events-Modal: Video-Optionen erweitert (Autoplay, Loop, Lautstärke, Ton aus). Werte werden bei neuen Terminen aus System-Defaults initialisiert.",
        "⚙️ Einstellungen › Events › Videos: Globale Defaults für Autoplay, Loop, Lautstärke und Mute (Keys: video_autoplay, video_loop, video_volume, video_muted)."
      ]
    },
    {
      "version": "2025.1.0-alpha.10",
      "date": "2025-10-25",
      "changes": [
        "🎬 Client: Client kann jetzt Videos wiedergeben (Playback/UI surface) — Benutzerseitige Präsentation wurde ergänzt.",
        "🧩 UI: Event-Modal ergänzt um Video-Auswahl und Wiedergabe-Optionen (Autoplay, Loop, Lautstärke).",
        "📁 Medien-UI: FileManager erlaubt größere Uploads für Full-HD-Videos; Client-seitige Validierung begrenzt Videolänge auf 10 Minuten."
      ]
    },
    {
      "version": "2025.1.0-alpha.9",
      "date": "2025-10-19",
      "changes": [
        "🆕 Events: Darstellung für ‘WebUntis’ harmonisiert mit ‘Website’ (UI/representation).",
        "🛠️ Einstellungen › Events: WebUntis verwendet jetzt die bestehende Supplement-Table-Einstellung (Settings UI updated)."
      ]
    },
    {
      "version": "2025.1.0-alpha.8",
      "date": "2025-10-18",
      "changes": [
        "✨ Einstellungen › Events › Präsentationen: Neue UI-Felder für Slide-Show Intervall, Page-Progress und Auto-Progress.",
        "️ UI: Event-Modal lädt Präsentations-Einstellungen aus Global-Defaults bzw. Event-Daten (behaviour surfaced in UI)."
      ]
    },
    {
      "version": "2025.1.0-alpha.7",
      "date": "2025-10-16",
      "changes": [
        "✨ Einstellungen-Seite: Neues Tab-Layout (Syncfusion) mit rollenbasierter Sichtbarkeit.",
        "🗓️ Einstellungen › Events: WebUntis/Vertretungsplan in Events-Tab (enable/preview in UI).",
        "📅 UI: Akademische Periode kann in der Einstellungen-Seite direkt gesetzt werden."
      ]
    },
    {
      "version": "2025.1.0-alpha.6",
      "date": "2025-10-15",
      "changes": [
        "✨ UI: Benutzer-Menü (top-right) mit Name/Rolle und Einträgen 'Profil' und 'Abmelden'."
      ]
    },
    {
      "version": "2025.1.0-alpha.5",
      "date": "2025-10-14",
      "changes": [
        "✨ UI: Einheitlicher Lösch-Workflow für Termine mit benutzerfreundlichen Dialogen (Einzeltermin, Einzelinstanz, Serie).",
        "🔧 Frontend: RecurrenceAlert/DeleteAlert werden abgefangen und durch eigene Dialoge ersetzt (Verbesserung der UX).",
        "✅ Bugfix (UX): Keine doppelten oder verwirrenden Bestätigungsdialoge mehr beim Löschen von Serienterminen."
      ]
    },
    {
      "version": "2025.1.0-alpha.4",
      "date": "2025-10-11",
      "changes": [
        "🎨 Theme: Umstellung auf Syncfusion Material 3; zentrale CSS-Imports (UI theme update).",
        "🧩 UI: Gruppenverwaltung ('infoscreen_groups') auf Syncfusion-Komponenten umgestellt.",
        "🔔 UI: Vereinheitlichte Notifications / Toast-Texte für konsistente UX."
      ]
    },
    {
      "version": "2025.1.0-alpha.3",
      "date": "2025-09-21",
      "changes": [
        "🧭 UI: Periode-Auswahl (Syncfusion) neben Gruppenauswahl; kompakte Layout-Verbesserung.",
        "✅ Anzeige: Abzeichen für vorhandenen Ferienplan + 'Ferien im Blick' Zähler (UI indicator).",
        "📤 UI: Ferien-Upload (TXT/CSV) Benutzer-Workflow ergänzt."
      ]
    },
    {
      "version": "2025.1.0-alpha.2",
      "date": "2025-09-01",
      "changes": [
        "UI Fix: Fehler beim Umschalten der Ansicht auf der Medien-Seite behoben."
      ]
    },
    {
      "version": "2025.1.0-alpha.1",
      "date": "2025-08-30",
      "changes": [
        "🆕 UI: Programminfo-Seite mit dynamischen Daten, Build-Infos und Changelog.",
        "✨ UI: Logout-Funktionalität (Frontend) implementiert.",
        "🐛 UI Fix: Breite der Sidebar im eingeklappten Zustand korrigiert."
      ]
    }
  ]
}
