From d0e6328a4898d19827c613a37df222abbc8c3269 Mon Sep 17 00:00:00 2001 From: Admin Date: Thu, 23 Apr 2026 10:37:55 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20README=20aktualisiert=20=E2=80=93=20Tab?= =?UTF-8?q?ellen,=20Flow-=C3=9Cbersicht,=20Sprachunterst=C3=BCtzung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 95 ++++++++++++++++++++++++++++++++----------------------- 1 file changed, 55 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index 63538cc..b4a59da 100644 --- a/README.md +++ b/README.md @@ -4,24 +4,61 @@ Ziel dieses Projekts ist eine Webanwendung, die Patient:innen in der Notaufnahme mit Hilfe von Bildern, Slidern, Audio und minimalem Text durch eine strukturierte Vorab-Erhebung führt – unabhängig von Sprache und Lesekompetenz. -Die App soll: - -- die Anwendung des Manchester Triage Systems (MTS) unterstützen, -- eine strukturierte Darstellung der Beschwerden (Chief Complaint, Schmerz, Dauer, Red Flags) liefern, -- die finale Einstufung weiterhin dem geschulten Fachpersonal überlassen. +Die App unterstützt das Manchester Triage System (MTS) und liefert dem Fachpersonal +eine strukturierte Zusammenfassung (Chief Complaint, Schmerz, Dauer, Red Flags). +Die finale Einstufung bleibt stets qualifiziertem Personal vorbehalten. ## Architektur -- **frontend/** – Vue 3 SPA (Vite), Touch-optimierte UI für Patient:innen -- **backend/** – FastAPI-Backend mit REST-API -- **mts-config/** – JSON-Konfiguration für Fragen, Flows, Übersetzungen -- **docs/** – medizinische und UX-spezifische Dokumentation +| Bereich | Technologie | Beschreibung | +|---|---|---| +| `frontend/` | Vue 3 SPA (Vite + TypeScript) | Touch-optimierte UI für Patient:innen | +| `backend/` | FastAPI (Python) | REST-API mit MTS-Logik | +| `mts-config/` | JSON | Fragen, Flows, Flowchart-Zuordnungen | +| `docs/` | Markdown | Medizinische & UX-Dokumentation | + +## App-Flow + +``` +LanguageView → ComplaintView → FlowView → PainView → SummaryView +``` + +1. **LanguageView** – Sprachauswahl (DE / EN / AR), lädt Fragen-Konfiguration vom Backend +2. **ComplaintView** – Hauptbeschwerde als Symptom-Kacheln (icon + label) +3. **FlowView** – Pfadspezifische Red-Flag-Fragen (Boolean-Auswahl) +4. **PainView** – Schmerzintensität 0–10 per Slider +5. **SummaryView** – Vorgeschlagenes MTS-Flowchart, erkannte Red Flags, Prioritätsstufe + +## MTS-Flowcharts (Konfiguration) + +`mts-config/flowcharts.json` bildet 10 Chief-Complaint-Codes auf MTS-Präsentations-Flowcharts ab: + +| Chief Complaint | MTS Flowchart | +|---|---| +| `chest_pain` | CHEST_PAIN | +| `abdominal_pain` | ABDOMINAL_PAIN | +| `headache` | HEADACHE | +| `unwell` | UNWELL_ADULT | +| `shortness_of_breath` | SHORTNESS_OF_BREATH | +| `head_injury` / `trauma` | HEAD_INJURY | +| `collapse` | COLLAPSED_ADULT | +| `palpitations` | PALPITATIONS | +| `overdose` / `poisoning` | OVERDOSE_POISONING | +| `behaving_strangely` / `psychiatric` | BEHAVING_STRANGELY | + +## Backend-Logik (v0.3.0) + +Das FastAPI-Backend erkennt automatisch: +- Den passenden MTS-Flowchart anhand von `chief_complaint` +- Red Flags: `breathlessness`, `severe_pain` (≥ 8/10), `moderate_pain` (≥ 5/10) +- Prioritätsstufe: `RED_OR_ORANGE` bei Atemnot oder Hochrisiko-Flowchart + starkem Schmerz ## Entwicklung ```bash # Backend cd backend +pip install -e . uvicorn app.main:app --reload # Frontend @@ -30,35 +67,13 @@ npm install npm run dev ``` -> Hinweis: Die medizinische Verantwortung und die abschließende Triage-Einstufung +## Sprachunterstützung + +Fragen-Konfigurationen liegen als `mts-config/questions..json` vor. +Aktuell verfügbar: `de`, `en`. Weitere Sprachen durch neue JSON-Dateien ergänzbar. + +--- + +> **Hinweis:** Die medizinische Verantwortung und die abschließende Triage-Einstufung > nach dem Manchester Triage System (MTS) liegt immer bei qualifiziertem Fachpersonal. - -## Manchester-Triage-Flowcharts (Konfiguration) - -Die Datei `mts-config/flowcharts.json` enthält aktuell folgende abgebildete Präsentations-Flowcharts des Manchester Triage Systems (MTS): - -- CHEST_PAIN → chief_complaint `chest_pain` -- ABDOMINAL_PAIN → chief_complaint `abdominal_pain` -- HEADACHE → chief_complaint `headache` -- UNWELL_ADULT → chief_complaint `unwell` -- SHORTNESS_OF_BREATH → chief_complaint `shortness_of_breath` -- HEAD_INJURY → chief_complaint `head_injury` / `trauma` -- COLLAPSED_ADULT → chief_complaint `collapse` -- PALPITATIONS → chief_complaint `palpitations` -- OVERDOSE_POISONING → chief_complaint `overdose` / `poisoning` -- BEHAVING_STRANGELY → chief_complaint `behaving_strangely` / `psychiatric` - -Diese Konfiguration bildet die Zuordnung von Chief-Complaint-Codes zu den entsprechenden MTS-Präsentations-Flowcharts ab. Im Backend (FastAPI) ist bereits eine erste datengetriebene Logik für alle 10 Flowcharts umgesetzt: Das API ordnet `chief_complaint` automatisch dem passenden MTS-Flowchart zu, erkennt erste Red Flags wie `breathlessness`, `severe_pain` und `moderate_pain` und schlägt darauf basierend eine grobe Prioritätsstufe vor. Zusätzlich enthalten `questions.de.json` und `questions.en.json` bereits eine Ja/Nein-Frage zu starker Luftnot als ersten expliziten Red-Flag-Discriminator im Fragenstrom. - - -## Aktueller App-Flow - -Die Frontend-App bleibt modular als Vue-3-SPA aufgebaut und wurde um einen zusätzlichen Schritt `FlowView` erweitert. Der Ablauf ist aktuell: - -- `LanguageView` – Sprache wählen -- `ComplaintView` – Hauptbeschwerde auswählen -- `FlowView` – pfadspezifische Zusatzfragen / Red-Flag-Fragen (derzeit als modulare Boolean-Komponenten) -- `PainView` – Schmerzintensität erfassen -- `SummaryView` – vorgeschlagenes MTS-Flowchart, Red Flags und Prioritätsstufe anzeigen - -Die Zusatzfragen werden aus `mts-config/questions..json` geladen. Damit kann die App schrittweise in Richtung mehrerer MTS-spezifischer Entscheidungsbäume erweitert werden, ohne eine monolithische Einzeldatei zu erzeugen. +> Diese App dient ausschließlich der strukturierten Vorab-Erhebung.