Files
beh-rde-brief/README.md
2026-07-12 19:59:15 +02:00

3.3 KiB
Raw Blame History

BehördenKlar

Behördenbriefe scannen, in einfacher Sprache verstehen, übersetzen und direkt beantworten.

Funktionen

  • 📷 Brief scannen — Foto, Galerie-Bild oder PDF
  • 🧠 KI-Analyse (Claude Vision) — ein Aufruf liefert strukturiert:
    • „Was will das Amt von mir?" in 2-3 Sätzen (A2-Niveau)
    • Ausführliche Erklärung in einfacher Sprache
    • Fachbegriffe mit Erklärung
    • Fristen & Termine (exakte Daten)
    • Checkliste („Diese Unterlagen mitbringen…")
  • 🚦 Dringlichkeits-Ampel — lokal berechnet: 🔴 < 7 Tage · 🟡 721 Tage · 🟢 keine Frist
  • 🌐 Übersetzung in 9 Sprachen (Türkisch, Arabisch, Englisch, Russisch, Ukrainisch, Französisch, Farsi, Rumänisch, Polnisch) — on demand, gecacht
  • ✍️ Antwort-Generator — Vorlagen (Terminbestätigung, Verschiebung, Widerspruch, Unterlagen nachreichen, Rückfrage), frei editierbar, PDF-Export
  • 🗓️ Kalender-Export für Termine, lokale Erinnerungen 3 + 1 Tage vor Fristen
  • 📖 Behörden-Glossar (offline), 🔊 Vorlese-Funktion, 📡 Offline-Hinweis
  • 🔒 Datenschutz: Einwilligung vor erstem Scan, alle Daten nur lokal, „Alles löschen"-Funktion

Starten (Entwicklung)

npm install
npx expo start

App in Expo Go (oder Development Build) öffnen, dann:

  1. Einstellungen → Anthropic-API-Schlüssel eintragen (von console.anthropic.com). Der Schlüssel landet verschlüsselt im Secure Store des Geräts.
  2. Brief scannen → Einwilligung bestätigen → Foto machen.

Hinweis: Erinnerungen (Benachrichtigungen) sind in Expo Go auf Android eingeschränkt — im Development Build (npx expo run:android) voll verfügbar.

Produktion: Backend-Proxy statt API-Key in der App

Für Endkunden darf kein API-Key in der App stecken. Vorbereitet in src/services/claudeClient.ts:

const PROXY_URL: string | null = null; // -> eigene Server-URL eintragen

Der Proxy (z. B. Cloudflare Worker / Vercel Function) muss nur:

  1. den Request-Body unverändert an https://api.anthropic.com/v1/messages weiterleiten,
  2. dabei serverseitig x-api-key + anthropic-version: 2023-06-01 setzen,
  3. die Antwort unverändert zurückgeben.

Abrechnung der Endkunden dann per Abo/In-App-Kauf.

Architektur

src/
  services/
    claudeClient.ts    Low-Level Claude-API-Client (Dev-Direkt / Prod-Proxy)
    analyse.ts         Vision-Aufruf + JSON-Schema (Structured Output)
    uebersetzung.ts    Übersetzung pro Sprache, gecacht
    antwort.ts         Antwort-Entwurf-Generator
    storage.ts         SecureStore (Key) + AsyncStorage (Archiv, Consent)
    erinnerungen.ts    lokale Benachrichtigungen vor Fristen
    kalender.ts        Termin-Export
  utils/ampel.ts       Dringlichkeits-Ampel (deterministisch, lokal)
  store/useAppStore.ts  Zustand-Store, synchron zu AsyncStorage
  screens/             Home, Consent, Scan, Analyse, Antwort, Glossar, Einstellungen
  components/          GrossButton, Ampel (barrierefrei: 56px-Targets, große Schrift)
  data/glossar.ts      Offline-Glossar

Die KI-Antworten sind über Structured Output (JSON-Schema) garantiert valide — kein fragiles Text-Parsing.

Wichtig

Diese App ersetzt keine Rechtsberatung. Bei rechtlich relevanten Antworten (z. B. Widerspruch) Beratungsstelle oder Anwalt hinzuziehen.