Keine Beschreibung
  • TypeScript 85.4%
  • CSS 11.4%
  • Makefile 2.3%
  • HTML 0.9%
Datei suchen
rev 69f9823960
Alle Prüfungen waren erfolgreich
Forgejo CI / build (push) Successful in 9m33s
LICENSE hinzugefügt
2026-04-08 08:31:18 +02:00
.devcontainer initial commit 2026-04-02 21:28:01 +02:00
.forgejo/workflows update pipeline 2026-04-02 21:32:44 +02:00
public initial commit 2026-04-02 21:28:01 +02:00
src initial commit 2026-04-02 21:28:01 +02:00
.gitignore initial commit 2026-04-02 21:28:01 +02:00
.gitlab-ci.yml initial commit 2026-04-02 21:28:01 +02:00
index.html initial commit 2026-04-02 21:28:01 +02:00
LICENSE LICENSE hinzugefügt 2026-04-08 08:31:18 +02:00
Makefile initial commit 2026-04-02 21:28:01 +02:00
package-lock.json initial commit 2026-04-02 21:28:01 +02:00
package.json initial commit 2026-04-02 21:28:01 +02:00
README.md [upd] Readme 2026-04-02 22:28:30 +02:00
tsconfig.app.json initial commit 2026-04-02 21:28:01 +02:00
tsconfig.json initial commit 2026-04-02 21:28:01 +02:00
tsconfig.node.json initial commit 2026-04-02 21:28:01 +02:00
vite.config.ts initial commit 2026-04-02 21:28:01 +02:00

Assessment Webapp

React + TypeScript Webapp fuer YAML-konfigurierbare Assessments mit Wizard-Flow, Ergebnisberechnung und lokalem JSON-Import/Export.

Was die App kann

  • Assessment-Fragen aus statischen YAML-Dateien im Deployment laden
  • Fragen Schritt fuer Schritt durchlaufen (eine Frage pro Schritt)
  • Drei Auswertungsmodi unterstuetzen: score, criteria, tree
  • Ergebnis inkl. Zeitstempel anzeigen
  • Aktuelle Runde und Verlauf im Browser speichern (localStorage)
  • Daten lokal als JSON exportieren und wieder importieren

Aktuell verfuegbare Assessments

Im UI sind genau diese YAML-Dateien auswaehlbar:

  • public/assessment.cloud-strategy.yaml
  • public/assessment.cloud-regulated.yaml
  • public/assessment.cloud-regulated.tree.yaml

Standard ist:

  • assessment.cloud-strategy.yaml

Optional kann per URL-Parameter ein anderes hinterlegtes Assessment gesetzt werden, z. B.:

  • ?assessment=assessment.cloud-regulated.yaml

Nur die oben genannten Dateien sind gueltig.

Schnellstart

Voraussetzung: Node.js 20+

  1. Abhaengigkeiten installieren:
npm ci
  1. Entwicklungsserver starten:
npm run dev
  1. Produktionsbuild erstellen:
npm run build
  1. Build lokal ansehen:
npm run preview

NPM Scripts

  • npm run dev: Startet Vite im Entwicklungsmodus
  • npm run typecheck: Fuehrt TypeScript-Checks fuer App und Node-Konfig aus
  • npm run build: Fuehrt Typecheck aus und baut danach mit Vite
  • npm run preview: Startet Vorschau fuer dist/

Makefile-Kommandos

  • make install: Abhaengigkeiten via npm ci installieren
  • make dev: Entwicklungsserver starten
  • make typecheck: TypeScript-Pruefung ausfuehren
  • make build: Produktionsbuild erstellen
  • make preview: Produktionsbuild lokal ansehen
  • make clean: dist/ und tsbuildinfo-Dateien entfernen
  • make clean-all: zusaetzlich node_modules entfernen

YAML-Aufbau

Jede Konfiguration hat mindestens:

  • title
  • questions
  • evaluation

Unterstuetzte Fragetypen:

  • single: genau eine Option
  • multiple: mehrere Optionen
  • boolean: true/false mit optionalen Labels

evaluation.mode = score

  • Optionen (bei single/multiple) benoetigen weight
  • boolean-Fragen benoetigen trueWeight und falseWeight
  • Ergebnisbaender ueber evaluation.resultBands (minScore/maxScore)

evaluation.mode = criteria

  • Regeln in evaluation.rules
  • Bedingungen ueber all, any, not
  • fallbackResultId als Rueckfall
  • Ergebnisse in results[] mit id/label/description

evaluation.mode = tree

  • startNodeId und nodes erforderlich
  • Knoten sind entweder Entscheidung (when/thenNodeId/elseNodeId) oder Leaf (resultId)
  • Ergebnisse in results[] mit id/label/description

Datenhaltung

Die App speichert lokal im Browser:

  • assessment.currentRun
  • assessment.history

Es gibt keinen Server-Upload. JSON-Import/Export bleibt lokal auf dem Client.

CI und Deployment

  • GitLab Pages: .gitlab-ci.yml baut dist/ und publiziert auf Pages
  • Optionaler Base-Pfad per CI/CD Variable PAGES_BASE_PATH
  • Forgejo Workflow: .forgejo/workflows/ci.yml (Install, Typecheck, Build; bei Tags zusaetzlich Release-Asset)