Diese Demo ist eine vollständig eigenständige Single-Page-Anwendung, die ohne externe Abhängigkeiten oder Frameworks auskommt. Alle Funktionen sind in einer einzigen HTML-Datei implementiert.
🏗️ Aufbau & Technologie
Frontend: Reines HTML5, CSS3 und Vanilla JavaScript – kein React, Vue oder ähnliches. Die gesamte Logik läuft clientseitig im Browser.
- HTML: Semantische Struktur mit klar definierten Bereichen (Sidebar, Main, Overlays)
- CSS: Modernes Design mit CSS Custom Properties (CSS Variables), Flexbox und Transitions
- JavaScript: Event-gesteuerte Architektur ohne externe Bibliotheken
Kernkomponenten
Die Anwendung besteht aus mehreren unabhängigen Modulen:
- Login-System: Demo-Authentifizierung mit SessionStorage (Passwort: easybill2026)
Ja, ich weiß – Passwort im Klartext im Code 😬 Aber hey, ist ja nur 'ne Demo! In der echten easybill Connect Anwendung gibt's natürlich OAuth 2.0 mit PKCE, bcrypt-gehashte Passwörter (min. 12 Zeichen, Sonderzeichen, Zahlen), Multi-Faktor-Authentifizierung, Rate-Limiting, Session-Tokens mit HTTP-only Cookies, CSRF-Protection und regelmäßige Security-Audits. Also alles nach BSI-Standard. Versprochen! 🔐
- Seitennavigation: Dynamisches Umschalten zwischen verschiedenen Einstellungsseiten
- Geführte Tour: Animierter Walkthrough mit Spotlight-Effekt und Step-by-Step-Erklärungen
- Chat-Butler: KI-ähnlicher Assistent mit vordefiniertem Szenario, der Einstellungen automatisch vornimmt
- Erklär-Modus: Interaktives Hilfe-System mit Kontext-Popups für jedes UI-Element
- Erklärtext-Editor: Redaktioneller Editor (Admin → Tab „Erklärtexte") mit Markdown-Formatierung und Live-Vorschau; Persistierung über PHP-Backend oder LocalStorage als Fallback
Datenpersistenz
Hybrid-Ansatz: Server-first mit LocalStorage-Fallback für maximale Flexibilität
Die Erklärtexte werden zunächst über texte_admin.php auf dem Server gespeichert (erklaer-texte.json). Schlägt dies fehl (z. B. bei lokaler Nutzung via file://), wechselt der Editor automatisch zu LocalStorage – die Vorschau funktioniert dann trotzdem.
Design-Prinzipien
- Progressive Enhancement: Kernfunktionalität ohne JavaScript, erweiterte Features mit JS
- Responsive Design: Optimiert für Desktop, mit mobilen Breakpoints
- Accessibility: ARIA-Labels, Tastaturnavigation und semantisches HTML
- Performance: Keine externen Requests außer Google Fonts – alles inline
Backend (Optional)
texte_admin.php ist ein minimalistisches PHP-Script, das:
- GET-Requests beantwortet mit allen Erklärtexten aus
erklaer-texte.json
- POST-Requests (passwortgeschützt) verarbeitet und die Texte gebündelt speichert
- vor dem Schreiben ein Backup (
.bak) anlegt und atomar via temp-Datei schreibt
Deployment
Die Demo kann auf drei Arten bereitgestellt werden:
- Vollversion (empfohlen): HTML + PHP auf einem Webserver mit PHP-Unterstützung
- Statisch: Nur HTML auf CDN/Static-Hosting – Erklärtext-Editor nutzt LocalStorage
- Lokal: Direkt als Datei öffnen – alle Features außer serverseitigem Speichern verfügbar
Besonderheiten
- Zero Dependencies: Kein npm, keine Build-Tools, kein Bundler
- Self-Contained: Eine Datei, kopieren & fertig
- Graceful Degradation: Funktioniert auch ohne Server
- Developer-Friendly: Klarer, kommentierter Code ohne Minification
Technischer Stack: HTML5 · CSS3 · ES6+ JavaScript · PHP 7.4+ (optional)
Browser-Support: Chrome, Firefox, Safari, Edge (moderne Versionen)