# InnungsApp — Product Requirements Document (PRD)

> **Version:** 2.0 | **Status:** In Review | **Owner:** Timo Knuth
> **Zielmarkt:** Innungen & Kreishandwerkerschaften in Deutschland

---

## 1. Problemdefinition

### 1.1 Status Quo bei Innungen

Deutsche Handwerksinnungen verwalten ihre Mitglieder und kommunizieren heute mit:
- **Excel-Tabellen** für Mitgliederverwaltung (lokal, nicht synchronisiert)
- **WhatsApp-Gruppen** für interne Kommunikation (DSGVO-Problem)
- **E-Mail-Verteiler** für Rundschreiben (kein Tracking, kein Self-Service)
- **PDF-Formulare** per Post für Anmeldungen (langsam, fehleranfällig)
- **Vereinzelte Websites** für die Lehrstellenbörse (veraltet, schlecht mobil)

### 1.2 Konkrete Pain Points

**Geschäftsführer / Admin:**
- Mitgliederdaten pflegen ist zeitaufwendig (manuelle Excel-Updates)
- Keine Ahnung, ob Rundschreiben gelesen wurden
- Terminanmeldungen kommen per Telefon und E-Mail — chaotisch
- Lehrstelleninserate manuell auf Website pflegen

**Innungsmitglied (Betrieb):**
- Verpasst wichtige Informationen, weil E-Mails übersehen werden
- Keine Möglichkeit, Ausbildungsstellen einfach zu veröffentlichen
- Muss für jede Kleinigkeit den Geschäftsführer anrufen

**Azubi-Bewerber (Gen Z):**
- Stellenangebote auf Websites sind veraltet und langweilig
- Muss PDF-Bewerbungen per E-Mail schicken (antiquiert)
- Kein Einblick in den Berufsalltag

### 1.3 Warum jetzt?

1. **Fachkräftemangel als Treiber:** ~250.000 unbesetzte Ausbildungsplätze in Deutschland (2025)
2. **Digitalisierungsdruck:** Post-Corona haben Innungen erkannt, dass digitale Tools fehlen
3. **Generationenwechsel:** Jüngere Obermeister und Geschäftsführer sind technikaffin
4. **Fördergelder:** BMWi und HWKs haben Digitalisierungsprogramme mit Budget

---

## 2. Produktvision

**Vision Statement:**
> InnungsApp wird die Standard-Infrastruktur des deutschen Handwerks — die Plattform, auf der Innungen verwalten, kommunizieren, Azubis finden und ihre Mitglieder vernetzen.

**Mission:**
> Das deutsche Handwerk digital und zukunftsfähig machen — beginnend mit dem direkten Werkzeug jeder Innung.

---

## 3. Zielgruppe & Rollen

### Primäre Käufer (B2B)

| Rolle | Beschreibung | Hauptmotivation |
|---|---|---|
| **Innungsgeschäftsführer** | Hauptadmin, verwaltet alles | Zeitersparnis, Übersicht |
| **Obermeister** | Vorsitzender der Innung | Reputation, Mitgliederservice |

### Primäre Nutzer (Enduser)

| Rolle | Beschreibung | Hauptbedürfnis |
|---|---|---|
| **Mitglied (Betrieb)** | Inhaberin/Inhaber des Mitgliedsbetriebs | Information, Azubi finden |
| **Azubi-Bewerber** | 15–20 Jahre, sucht Ausbildungsplatz | Einfache, moderne Bewerbung |
| **Lernender (Azubi)** | In der Ausbildung | Berichtsheft, Prüfungsvorbereitung |

### Sekundäre Nutzer (Post-MVP)

- Prüfungsausschüsse (Gesellenprüfungen)
- HWK-Mitarbeiter (übergeordnete Verwaltung)
- Lieferanten / Hersteller (Marktplatz-Modul)

---

## 4. Feature-Scope MVP

### 4.1 Modul: Mitgliederverzeichnis

**Ziel:** Zentrales, durchsuchbares Verzeichnis aller Mitgliedsbetriebe.

**User Stories:**
- Als Mitglied möchte ich andere Betriebe in meiner Innung finden, um mich zu vernetzen
- Als Admin möchte ich Mitglieder anlegen, bearbeiten und deaktivieren

**Funktionen:**
- Liste aller Mitgliedsbetriebe mit Suche und Filter
- Filter: Sparte, Ort, Ausbildungsbetrieb ja/nein, Status
- Detailansicht: Name, Betrieb, Sparte, Ort, Telefon, E-Mail, Website, Ausbildungsbetrieb
- Direktkontakt: Tap-to-Call, Tap-to-Mail
- Admin-CRUD: Mitglied anlegen, bearbeiten, deaktivieren, Einladungs-E-Mail senden
- Status-Management: aktiv / ruhend / ausgetreten

**Nicht im MVP:**
- Öffentliches Unternehmensverzeichnis (für Endkunden)
- Bewertungssystem
- Karten-/Geo-Ansicht
- CRM-Integration

---

### 4.2 Modul: Mitteilungen & News

**Ziel:** Gesteuerter Kommunikationskanal von der Innung an ihre Mitglieder.

**User Stories:**
- Als Admin möchte ich Mitteilungen mit Push-Notification versenden, um sicherzustellen, dass alle erreicht werden
- Als Mitglied möchte ich wichtige Mitteilungen einfach finden und nicht in E-Mails suchen müssen

**Funktionen:**
- Feed aller Beiträge, chronologisch sortiert
- Kategorien: Wichtig / Prüfung / Förderung / Veranstaltung / Allgemein
- Push-Notification bei neuem Beitrag (optional konfigurierbar)
- Ungelesen/Gelesen-Status pro Nutzer und Beitrag
- PDF-Anhänge (Rundschreiben, Formulare)
- Admin: Beitrag erstellen, bearbeiten, löschen, zeitgesteuert veröffentlichen
- Admin: Leserate pro Beitrag einsehen

**Nicht im MVP:**
- Kommentarfunktion (erhöht Moderationsaufwand)
- Mitglieder-Posts (asymmetrischer Kanal gewollt)
- Direktnachrichten / Chat

---

### 4.3 Modul: Lehrlingsbörse (Basic)

**Ziel:** Ausbildungsplätze der Mitgliedsbetriebe einfach veröffentlichen und finden.

**User Stories:**
- Als Betrieb möchte ich meine Ausbildungsstellen einfach einstellen, ohne die Innung fragen zu müssen
- Als Bewerber möchte ich Stellen ohne Registrierung durchsuchen

**Funktionen (Betrieb):**
- Stelle anlegen: Sparte, Anzahl, Vergütung nach Lehrjahr, Ausbildungsstart, Kontakt
- Stelle aktivieren / pausieren / löschen
- Bewerbungskontakt: E-Mail oder Telefon

**Funktionen (Bewerber, öffentlich ohne Login):**
- Stellenliste durchsuchen
- Filter: Sparte, Ort, Lehrjahr, Ausbildungsstart
- Direktkontakt zum Betrieb (E-Mail / Telefon)

**Nicht im MVP:**
- In-App Bewerbungsformular
- Matching-Algorithmus
- Video-Feed (→ Azubi-Modul Advanced, Q2)
- Berichtsheft

---

### 4.4 Modul: Termine & Veranstaltungen

**Ziel:** Veranstaltungskalender mit An-/Abmeldefunktion und Teilnehmermanagement.

**User Stories:**
- Als Admin möchte ich Termine anlegen und die Teilnehmerliste einsehen
- Als Mitglied möchte ich mich für Veranstaltungen anmelden und den Termin in meinen Kalender exportieren

**Funktionen:**
- Terminliste mit Typ-Tags: Prüfung / Versammlung / Kurs / Event / Lossprechung
- Termindetail: Titel, Datum, Uhrzeit, Ort, Beschreibung, Typ
- An-/Abmeldung mit E-Mail-Bestätigung
- Kalenderexport: iCal / Google Calendar / Outlook
- Admin: Termin anlegen, Teilnehmerliste exportieren (CSV)
- Push-Notification 24h vor Termin

**Nicht im MVP:**
- Bezahlte Events / Ticketing
- Wartelisten-Management
- Videokonferenz-Links (Q2)
- Saalplan / Sitzordnung

---

### 4.5 Modul: Admin-Dashboard (Web)

**Ziel:** Webbasiertes Backend für Innungsgeschäftsführer.

**Funktionen:**
- Übersicht: Mitgliederzahl, aktive Nutzer, ungelesene Beiträge
- Mitgliederverwaltung: CRUD, Massenimport via CSV, Einladungsversand
- Newsroom: Beiträge erstellen, planen, Leserate sehen
- Terminverwaltung: CRUD, Teilnehmerliste
- Lehrstellenverwaltung: Alle Stellen aller Betriebe einsehen und moderieren
- Einstellungen: Innungslogo, Farbe, Kontaktdaten, Spartenverzeichnis
- Einfache Analytics: DAU/MAU, Aktivierungsrate, meistgelesene Beiträge

**Tech:** Next.js Web-App auf `app.innungsapp.de/admin`

---

## 5. Out of Scope — MVP

| Feature | Begründung | Roadmap |
|---|---|---|
| Chat / Direktnachrichten | Moderation, DSGVO-Komplexität | Q3 2026 |
| Dokumentenarchiv | Fokus zuerst auf Kernkommunikation | Q2 2026 |
| Prüfungsverwaltung | Hochreguliert, eigenes Produkt | Q4 2026 |
| Mitgliederbeiträge / Buchhaltung | Buchhaltungsintegration nötig | 2027 |
| Video-Feed (TikTok-Style) | Eigenes Azubi-Modul | Q2 2026 |
| Berichtsheft digital | Komplex, eigenes Feature | Q3 2026 |
| Mehrsprachigkeit | Zielgruppe DE-only | 2027 |
| White-Label für HWK | Post Product-Market-Fit | Q4 2026 |
| Marktplatz / Lieferantenportal | Separate Business Unit | 2027 |

---

## 6. Nicht-funktionale Anforderungen

### Performance
- App-Ladezeit (Cold Start): < 3 Sekunden
- Feed-Ladezeit: < 1 Sekunde
- Push-Notification-Delivery: > 95 % innerhalb 30 Sekunden

### Sicherheit & Datenschutz
- DSGVO-konform: Datenverarbeitung nur in EU (Frankfurt)
- AVV (Auftragsverarbeitungsvertrag) mit jeder Innung
- Row Level Security: Jede Innung sieht ausschließlich ihre eigenen Daten
- Keine Weitergabe von Mitgliederdaten an Dritte
- Datenlöschung auf Anfrage innerhalb 30 Tage

### Verfügbarkeit
- Uptime-Ziel: 99,5 % (Supabase SLA)
- Geplante Wartungsfenster: nachts 02:00–04:00 Uhr

### Skalierbarkeit
- MVP-Kapazität: 100 Innungen, je bis 500 Mitglieder
- Skalierung auf 10.000 Innungen ohne Architekturänderung (Supabase managed)

### Barrierefreiheit
- iOS: Unterstützung für Dynamic Type und VoiceOver
- Mindest-Textgröße: 14pt
- Kontrastverhältnis: WCAG AA

---

## 7. Akzeptanzkriterien MVP

| Feature | Kriterium |
|---|---|
| Login | Nutzer kann sich via Magic Link in < 60 Sek. einloggen |
| Mitgliederverzeichnis | Admin kann Mitglied in < 2 Minuten anlegen |
| News | Beitrag ist nach Veröffentlichung in < 10 Sek. für alle sichtbar |
| Push-Notification | 95 % der Nutzer empfangen Push innerhalb 30 Sek. |
| Lehrlingsbörse | Stelle ist öffentlich sichtbar ohne Login |
| Termine | Anmeldung + Kalenderexport in < 3 Klicks |
| Multi-Tenancy | Kein Mitglied sieht Daten einer anderen Innung |
