Überblick
Highlights
Wochenkalender
Echtzeit-Verfügbarkeit mit Farbcodierung (frei / belegt / Sperre). Desktop 7-Tage-Ansicht, Mobile blätterbare Tagesansicht mit Wischgesten.
Serienbuchungen
Wöchentlich oder 14-tägig, Trainer-Zuweisung, Einzelausnahmen. DFBnet-Pflichtspiele verdrängen Serien automatisch.
DFBnet-Integration
CSV- und ICS-Massenimport mit Vorschau-Schritt. Automatischer Spielplan-Sync von fussball.de, manuell oder per Cron.
Instagram-Posting
Wochenend-Spielvorschau automatisch als Karussell auf Instagram veröffentlichen — ohne manuellen Aufwand.
Zero-Code-Konfiguration
Vereinsname, Logo, Farben, Plätze, Rollen — alles über die Admin-UI. Kein Code anfassen, kein Neustart.
E-Mail-Benachrichtigungen
Buchungsbestätigung, Storno, DFBnet-Verdrängung, Serienzusammenfassung — STARTTLS, Port 587.
Funktionsumfang
Buchungssystem & Admin
🗓 Buchungssystem Port 1946
- Einzelbuchungen für beliebige konfigurierbare Platztypen
- Serienbuchungen wöchentlich / 14-tägig mit Trainer-Zuweisung
- DFBnet-Verdrängung — Pflichtspiele verdrängen bestehende Buchungen + Mail
- Massenimport — DFBnet-CSV und ICS mit Vorschau-Schritt
- Sperrzeiten — ganztägig oder zeitlich begrenzt
- Externe Termine — Auswärts, Turniere ohne Platzbuchung
- Aufgaben / Schwarzes Brett — Typ, Priorität, Fälligkeit, Status
- Audit-Log — Login, Buchungen, Stornierungen protokolliert
- Lade-Overlay — HTMX-Statusmeldung nach 120 ms
⚙️ Admin-Bereich
- Vereinskonfiguration — Name, Logo, Farben, Heimspiel-Keywords über UI
- Platzkonfiguration — Rollen-Sichtbarkeit pro Platzgruppe
- Nutzerverwaltung — Anlegen, Inline-Editor, Passwort zurücksetzen
- Spielplan-Sync — Heimspiele von fussball.de, manuell oder Cron
- Instagram-Karussell — automatisches Wochenend-Posting
- Housekeeping — vergangene und stornierte Buchungen archivieren
- Saisonübernahme — aktive Serien mit +1 Jahr duplizieren
Architektur
Tech-Stack
Backend
Python 3.13
FastAPI
Uvicorn
APScheduler 3.10
pydantic-settings
Frontend
HTMX 2.0
Jinja2
Vanilla CSS
Datenbank
Notion API
notion-client
Auth
JWT HS256
HTTP-only Cookie
8 h Session
Betrieb
Docker
docker-compose
systemd
RotatingFileHandler
E-Mail
smtplib
STARTTLS
Port 587
Zugriffskontrolle
Benutzerrollen
Trainer
Buchen · eigene Buchungen stornieren · Termine & Aufgaben eintragen
Platzwart
Wie Trainer + Sperrzeiten verwalten
Administrator
Alles · Nutzerverwaltung · Serien · DFBnet-Import · Vereinskonfiguration
DFBnet
Wie Administrator · ohne Nutzerverwaltung