Files
trainingsplan/README.md
T
AI-Agent 8fc77212cb Startpunkt 02.10.2026: aktueller Stand des Trainingsplans
Historie bewusst neu aufgesetzt, ein einziger Commit als neuer Ausgangspunkt.
2026-10-02 01:23:25 +02:00

4.3 KiB

REKORD

Rekord & Record: dein Training, festgehalten.

Ein leichtgewichtiger, selbst gehosteter Trainings-Tracker fürs Gym, Laufen und Radfahren. Läuft in jedem modernen Browser, speichert auf deiner Platte und wertet deine Fitnessdaten nicht aus. Kein Abo, kein Konto bei einem Anbieter, keine Datenkraken.

Warum REKORD?

  • Kein Vendor Lock-in. Alles läuft bei dir: Backend auf deinem Server, Zustand in einer portablen SQLite-Datei. Export jederzeit als JSON oder CSV, Import genauso. Zieh um oder hör auf - deine Daten gehören dir.
  • Leichtgewichtig. Python-Standardbibliothek + SQLite im Backend, ein HTML-, ein CSS-, ein JS-File im Frontend. Kein Framework, kein Build-Schritt, keine Node-Installation. Läuft auf einem Mini-PC, einem alten Laptop oder in einem Container.
  • Browserbasiert. Keine App, kein Store, keine Installation. Aufschlagen, loslegen - auf jedem Gerät mit Browser.
  • Cross-Device Sync. Der Zustand liegt serverseitig. Öffne die App am Handy, am Laptop oder am Desktop-Rechner - es ist derselbe Stand. Mehrere Benutzer mit eigenen Konten und getrennten Daten sind eingebaut.
  • UX zuerst. Sätze eintragen mit einer Box (Zahl + Einheit in einem Feld), Set-Kette durch Abhaken, "Alles zurücksetzen", Verlauf inline bearbeiten, Wochenübersicht, Statistik mit Differenz zur ersten Messung. Der Tracker reibt sich nicht in den Weg zwischen dich und die Übung.
  • Dein Take aufs Aufzeichnen. Die App zeichnet auf - Gewichte, Reps, Cardio-Felder - und zeigt die Entwicklung über die Zeit. Sie verkauft nichts, personalisiert nichts und schickt nichts nach Hause.
  • Open Source. AGPL-3.0. Nachvollziehbar, erweiterbar, auditierbar.

Features im Überblick

Training erfassen

  • Gym mit Push/Pull/Legs (frei konfigurierbar) plus Laufen und Radfahren
  • Eingabe als eine Box: Zahl links, Einheit fest rechts (kg, reps, km, min, min/km, bpm, m)
  • Set-Abhaken als "Set n [ ]": der ganze Button ist klickbar, das Set hakt eine Kette ab - ohne Lücken
  • Reset-Satz und "Alles zurücksetzen" laden das letzte abgeschlossene Training
  • Vorbefüllung beim Start (optional): "Letztes Training vorbefüllen" oder "Plan-Gewichte vorbefüllen" (startKg aus der Config, auch ohne Verlauf)
  • Übungen per Drag & Drop sortieren, Übungen aus anderen Tagen spontan hinzufügen
  • Fragezeichen pro Übung: Erklärung plus die passende Maschine

Sessions & Verlauf

  • "Session starten" / "Session abschließen", mehrere Sessions am Tag
  • Keine Geister: erst abgeschlossene Sessions erscheinen im Verlauf
  • Verlauf als Liste oder Wochenübersicht, inline bearbeitbar (Datum, Zeiten, Abhak-Status, Werte) und löschbar
  • Statistik: bestes Gewicht je Trainingstag mit Balken, Differenz zur ersten Messung

Ansicht & Einstellungen

  • Deutsch und Englisch (Server-Standard und pro Benutzer)
  • Farbthema: Dunkel, System (folgt dem Gerät), Hell - plus OLED-Dark-Schalter
  • Akzentfarbe aus zehn Farben (inklusive Weiß)
  • Gewichtseinheit kg oder lb, Start-Ansicht wählbar
  • Einstellungen serverseitig, gelten auf allen Geräten

Mehrbenutzer

  • Eigene Konten mit Kennwort (gehasht), Daten strikt getrennt
  • Der erste Benutzer ist Administrator und verwaltet Konten und Kennwörter
  • Einmaliger Einrichtungs-Wizard beim ersten Start (Sprache, Modus, Darstellung)

Daten

  • Export/Import als JSON und CSV (Backup, Umzug, Tabellen-Auswertung)
  • Workouts über eine kleine API abrufbar (/api/workouts)
  • Demo-Daten (demo-data.json) zum direkten Ausprobieren

Schnellstart

Python (nur Standardbibliothek, kein pip install):

python3 server.py 8080

Oder mit Docker:

docker compose up -d

Danach im Browser: http://<host>:8080/

Beim ersten Start führt dich ein kurzer Wizard durch Sprache, Einzel- oder Mehrbenutzermodus und Darstellung - danach ist die App einsatzbereit.

Den Übungsplan anpassen

Alle Übungen, Sätze, Gewichte, Maschinen und Erklärungen stehen in config.json - ohne Code-Eingriff. Das komplette Schema steht in der technischen Dokumentation.

Daten & Privatsphäre

  • Alles liegt in data/state.db (SQLite) - backupbar, überlebt Neustart und Container-Rebuild
  • Datenverzeichnis frei wählbar (TRAINING_STATE_DIR)
  • Keine externen Dienste, keine Telemetrie, keine Analyse deiner Daten

Lizenz

AGPL-3.0. Siehe LICENSE.