- Benutzer wird erst beim 'Einrichtung abschliessen' angelegt (POST
/api/register im wizardFinish); bis dahin frei umentscheidbar, im Modus-
Schritt Hinweis + Live-Validierung (Finish deaktiviert bis ausgefuellt)
- Reihenfolge: Sprache -> Darstellung (Theme/OLED/Akzent) -> Modus
(Einzel/Mehrbenutzer); Onboarding bleibt Sprache -> Darstellung
- Sprach-Schritt: Repo-Link + Kurztext zum Starten (nutzt den Raum)
- Wizard-Modal: min-height statt fixer Hoehe -> Modus-Schritt mit Formular
wird nicht mehr abgeschnitten
- Server-Reset auch im Einzelmodus moeglich (nur Bestaetigungstext,
kein Passwort noetig); Reset-Sektion erscheint dann entsprechend
- Tests: 167 Checks gruen (39+18+52+32+26)
- Setup-Wizard: feste Mindesthoehe (#setup-gate), Navigation unten
verankert -> Hoehe springt nicht mehr zwischen den Schritten
- Wizard Benutzer-Anlage: nach Erfolg Bestaetigung statt leerem Formular
(kein erneutes Eingeben), 'Weiter' aktiv
- Tabs: Labels werden uebersetzt (t()-i18n), Topbar/Tabs horizontal
scrollbar + kompakter auf Mobil -> 'Einstellungen' wird nicht mehr
abgeschnitten
- Button-Min-Breite (.btn 96px, .btn-small 64px) fuer Sprach-Konsistenz
- Fortschrittssegmente: bei weissem Akzent auf hellem Theme schwarz
(statt unsichtbar weiss)
- Set-Zeile: eine horizontale Reihe (nowrap) mit einheitlicher
Eingabe-Mindestbreite/-hoehe; Grid-Spalten auf 460px angepasst
- Leere Saetze (ohne Gewicht UND Reps) werden nicht mehr persistiert und
im Verlauf ausgeblendet (kein 'empty kg x empty reps'-Wand)
- Tests: 158 Checks gruen (39+18+43+32+26)
- Push auf main -> git.somantis.net/j4stmarkus/trainingsplan:latest + :<sha>
- Push eines Git-Tags v* -> zusaetzlich :vX.Y.Z (z.B. :v1.0.0)
- Nutzer ziehen :latest (rolling) oder eine feste Version per Tag
- .gitea/workflows/build-image.yml: Push auf main baut das Image und
schiebt latest + <sha> in die Gitea-Registry (j4stmarkus, lowercase)
- Workflow ist robust gegen Runner-Images ohne Docker-CLI (installiert
docker.io falls noetig); der Runner muss den Docker-Socket mounten
- docker-compose.casaos.yml: CasaOS-Custom-App-Format, installiert nur aus
dem Registry-Image, Datenband bleibt /DATA/AppData/trainingsplan/data
- assets/icon.png: echtes Somantis-Logo (aus Somantis/www), 512x512 PNG
- docker-compose.yml mit build: . bleibt fuer lokale Entwicklung bestehen
- docker rm -f trainingsplan vor docker compose up -d behebt den
Namenskonflikt mit einem alten Container (Daten-Ordner bleibt erhalten)
- Healthcheck prueft /api/meta statt des nicht existierenden /api/data