Files
boehmitools-training/plugins/trainingsplan/TOOL-README.md
T
2026-09-01 15:48:43 +02:00

2.8 KiB

Trainingsplan-Backend

Dieses Plugin ist nur noch das Eintragebackend fuer Trainingsplaene.

Es verwaltet:

  • Plaene
  • Uebungen in einer zentralen Uebungsbibliothek
  • einfache Progressionsvarianten pro Uebung
  • Trainingstage
  • Warm-up und Cool-down pro Trainingstag
  • Uebungen, die an Trainingstagen hinterlegt sind

Nicht mehr enthalten sind PDF-Erzeugung, Rezeptsammlungen, Progressionsregeln, Wochenlogik, Tracking, Pruefungen, Planvorschlaege, Analyse-/ChatGPT-Anbindungen und Farbdefinitionen fuer eine Ausgabeoberflaeche.

Datenvertrag

Trainingsplaene verwenden:

schema_version: 5
contract_version: 4

Eine Plan-Config ist bewusst flach:

{
  "schema_version": 5,
  "contract_version": 4,
  "plan_id": "basis-plan",
  "meta": {
    "title": "Basis-Plan"
  },
  "exercises": [
    {
      "id": "exercise-squat",
      "name": "Squat",
      "progressions": [
        { "id": "progression-deep-squat-hold", "name": "Deep Squat Hold" },
        { "id": "progression-negative-squat", "name": "Negative Squat" },
        { "id": "progression-full-squat", "name": "Full Squat" }
      ],
      "current_progression_id": "progression-deep-squat-hold"
    }
  ],
  "days": [
    {
      "id": "day-1",
      "num": 1,
      "name": "Tag 1",
      "warmup": { "items": ["Gelenke mobilisieren"] },
      "cooldown": { "items": ["Locker auslaufen"] },
      "exercises": [
        {
          "id": "day-exercise-1",
          "exercise_id": "exercise-squat"
        }
      ]
    }
  ]
}

API

  • GET /api/plans
  • POST /api/plans
  • GET /api/plans/<plan>
  • POST /api/plans/<plan>
  • POST /api/plans/<plan>/publish
  • POST /api/plans/<plan>/rename
  • DELETE /api/plans/<plan>
  • GET /api/plans/<plan>/exercises
  • POST /api/plans/<plan>/exercises
  • PATCH /api/plans/<plan>/exercises/<exercise>
  • DELETE /api/plans/<plan>/exercises/<exercise>
  • GET /api/plans/<plan>/days
  • POST /api/plans/<plan>/days
  • PATCH /api/plans/<plan>/days/<day>
  • DELETE /api/plans/<plan>/days/<day>
  • POST /api/plans/<plan>/days/<day>/exercises
  • PATCH /api/plans/<plan>/days/<day>/exercises/<item>
  • DELETE /api/plans/<plan>/days/<day>/exercises/<item>

Der alte aktive Config-Zugriff bleibt fuer einfache Clients erhalten:

  • GET /api/config
  • POST /api/config
  • GET /api/default
  • POST /api/reset

Migration

Aeltere Trainingsplaene werden beim Laden auf den flachen Vertrag reduziert. Uebungen aus alten Rotationen werden in die Uebungsbibliothek uebernommen und als Tagesuebungen referenziert. Alte stages.steps oder variants werden dedupliziert als einfache Progressionsvarianten an die Uebung gehaengt; die erste Variante wird als aktuelle Wahrheit gesetzt, wenn noch keine aktuelle Progression gespeichert ist. Warm-up und Cool-down werden aus den bisherigen Tages- oder prepost-Feldern uebernommen.