Zurück zum Projekt
Dokumentation

HelpMe - Mobile-App

FlutterDartSupabaseFirebase FCM

HelpMe digitalisiert die Vermittlung zwischen Kunden und Handwerkern. Vom ersten Foto eines Schadens über KI-gestützte Analyse.

##Überblick

HelpMe ist eine Mobile-App, die die Vermittlung zwischen Kunden und Handwerkern vollständig digitalisiert. Das Projekt entstand aus der Idee, den oft mühsamen Prozess der Handwerkersuche — vom ersten Schadensfoto bis zur Beauftragung — in einer einzigen, modernen App zu bündeln.

Die App unterstützt drei Nutzerrollen: Kunden, Helfer und Handwerker. Jede Rolle hat ein eigenes Onboarding, ein angepasstes Dashboard und rollenspezifische Funktionen — von der KI-gestützten Auftragserstellung bis zum Live-ETA-Tracker.

3
Nutzerrollen
7/7
Unit-Tests
17+
RLS Policies

##Kern-Features

KI-Auftragserstellung

  • Foto eines Schadens aufnehmen oder hochladen
  • Gemini API analysiert das Bild automatisch
  • Titel, Beschreibung und passendes Gewerk werden generiert
  • Auftrag kann direkt aus dem Ergebnis erstellt werden

Real-Time Chat & Notifications

  • Sofortiger Nachrichtenaustausch ohne Refresh
  • Push-Notifications via Firebase Cloud Messaging
  • Unread Indicators mit proaktiver Kennzeichnung
  • Medien (Fotos) direkt im Chat versendbar
  • Swipe-to-Delete für die Chat-Verwaltung

Rollenbasiertes System

  • Drei Rollen: Kunden, Helfer, Handwerker
  • Rollenspezifisches Onboarding bei Registrierung
  • Unterschiedliches Dashboard-Layout je Rolle
  • Rollenbasiertes Farb-UI: Grün (Kunden) / Blau (Handwerker)
  • Verifizierte Profile mit Badge-System

Suche, Karte & Live-ETA

  • Smart Synonym Search (z.B. «Strom» findet Elektriker)
  • Geolocation mit konfigurierbarem Arbeitsradius (5–500 km)
  • Live-Entfernungsanzeige in km
  • Live-ETA Tracker: Ankunft auf der Karte sichtbar
  • Direkt-Verlinkung zu Google/Apple Maps

Internes Admin Panel

  • Report-Handling: Nutzer-Meldungen einsehen & bearbeiten
  • Broadcast-Nachrichten an alle User senden
  • Handwerker-Dokumente prüfen & Verifizierung freigeben
  • Übersicht offener Reports mit Status-Tracking
  • Rollenbasierter Zugang nur für Admins

DSGVO & Security

  • 17+ Row-Level Security Policies in Supabase
  • Datenschutzerklärung, AGB und Impressum in der App
  • Vollständiger Account-Lösch-Flow
  • Adressdaten-Verschleierung nach Job-Abschluss
  • MIME-Type Checks und File-Size-Limits für Uploads

##Authentifizierung & Onboarding

Die gesamte Auth-Logik ist über Supabase Auth abgewickelt. Beim App-Start prüft ein intelligenter Splash-Screen den Login-Status und leitet entsprechend weiter.

  • Supabase Auth — sicherer Login & Registrierung
  • Rollenauswahl beim ersten Start: Kunde, Helfer oder Handwerker
  • Trennung zwischen Setup-Mode (Ersteinrichtung) und Edit-Mode (spätere Änderungen)
  • Rollenspezifische Profildaten: Gewerke für Handwerker, Services für Helfer
  • Avatar-Upload mit Supabase Storage Integration
  • Ghost-Filter: Unvollständige Profile werden aus der Suche ausgeblendet
  • Pflicht-Zustimmung zu AGB, Datenschutzerklärung und Altersbestätigung (18+)

##Messaging & Kommunikation

Das Messaging-System basiert auf Echtzeit-Subscriptions von Supabase und ist mit Firebase Cloud Messaging für Push-Notifications kombiniert.

Real-Time Chat

Nachrichten erscheinen sofort ohne Seitenrefresh — via Supabase Realtime Subscriptions.

Push Notifications

Firebase Cloud Messaging sendet Benachrichtigungen auch wenn die App im Hintergrund ist.

Media Sharing

Fotos können direkt im Chat geteilt werden — für schnelle Schadensberichte.

Unread Indicators

Proaktive Kennzeichnung ungelesener Nachrichten mit Echtzeit-Update.

##Job-Management & KI

Das Job-Management ist das Herzstück der App. Kunden können Aufträge erstellen — entweder manuell oder vollautomatisch per KI-Foto-Analyse.

KI-Assistent via Gemini API

Der Nutzer fotografiert einfach den Schaden. Die Gemini API analysiert das Bild und generiert automatisch einen Auftragstitel, eine präzise Beschreibung und das passende Gewerk — der Auftrag kann mit einem Tap abgesendet werden.

  • Real-Time Job Lists: Sofortige Updates bei neuen oder geänderten Aufträgen
  • Job Completion Service: Vollständiger Abschluss-Flow inkl. Bewertung
  • Smart Soft-Delete: Archivierung von Jobs (Chat bleibt, Job verschwindet aus Suche)
  • Privacy Protection: Adressdaten werden nach Job-Abschluss verschleiert
  • Repository Pattern (JobRepository) zur Entkopplung von UI und API

Die Suche geht weit über ein einfaches Textfeld hinaus. Intelligentes Synonym-Mapping und ein konfigurierbarer Arbeitsradius sorgen dafür, dass Kunden immer den richtigen Profi in ihrer Nähe finden.

Synonym Search

«Strom» → findet Elektriker, «Rohr» → Klempner. Intelligentes Mapping für natürliche Suchanfragen.

Arbeitsradius

Handwerker stellen ihren Wirkungsbereich ein: von 5 km bis 500 km oder bundesweit.

Live-ETA Tracker

Kunden sehen die voraussichtliche Ankunft des Profis live auf der Karte.

Distance Tracking

Entfernungsanzeige in km für jeden Anbieter direkt im Suchergebnis.

Maps Navigation

Uber-Style: Direkt-Link zu Google Maps oder Apple Maps mit einer Aktion.

Trade Filter

Schnellauswahl von Handwerkskategorien direkt auf dem Dashboard.

##Internes Admin Panel

Ein internes Admin Panel ermöglicht die zentrale Verwaltung der Plattform — von Nutzer-Reports über Broadcast-Nachrichten bis zur Verifizierung von Handwerker-Dokumenten.

  • Report-Handling: Eingehende Meldungen von Nutzern einsehen, bearbeiten und lösen
  • Broadcast-Nachrichten: Push-Benachrichtigungen an alle User oder spezifische Rollen senden
  • Dokument-Verifizierung: Handwerker-Nachweise (Meisterbrief, Gewerbeschein) prüfen und freigeben
  • Status-Tracking: Offene, bearbeitete und geschlossene Reports im Überblick
  • Rollenbasierter Admin-Zugang: Nur autorisierte Nutzer haben Zugriff

##Tech Stack

Der Stack ist auf Performance, Skalierbarkeit und Developer Experience ausgelegt.

Flutter 3.28.1UI Framework
Dart 3.10.1Programmiersprache
SupabaseBackend & Auth & DB
Riverpod 2.0State Management
GoRouterNavigation
Firebase FCMPush Notifications
Gemini APIAI / LLM
PostgreSQLDatenbank via Supabase

Architektur-Highlights

  • Repository Pattern (JobRepository) — saubere Trennung von UI und Datenschicht
  • Riverpod 2.0 mit Codegen für typsicheres State Management
  • GoRouter für deklarative, Deep-Link-fähige Navigation
  • CachedNetworkImage für optimiertes Bild-Laden in der gesamten App
  • Indexierung aller Foreign Keys für performante Datenbankabfragen

##Sicherheit & DSGVO

Sicherheit war von Beginn an kein Afterthought. Das Backend ist auf mehreren Ebenen abgesichert, die App ist vollständig DSGVO-konform (Stand 17.03.2026).

Backend Security

  • 17+ Row-Level Security Policies (RLS) — optimiert auf Performance
  • Column-Privacy: Straße/Hausnummer via RLS geschützt
  • MIME-Type Checks und File-Size-Limits für alle Uploads
  • SQL Injection Protection: Alle DB-Funktionen parametrisiert
  • OAuth Secrets in sicheren Umgebungsvariablen (.env)
  • HTTPS Enforced: Cleartext-Traffic auf Android deaktiviert

DSGVO & Rechtliches

  • Datenschutzerklärung als integrierter App-Screen
  • Nutzungsbedingungen (AGB) direkt in der App
  • Impressum mit Firmendaten hinterlegt
  • Pflicht-Zustimmung zu AGB/DSE und Altersbestätigung (18+)
  • DSGVO-Rechte: Informationsseite in der App
  • Vollständiger Account-Lösch-Flow für alle Nutzerdaten

##Code & Qualität

Der Code hält hohen Qualitätsstandards stand: Alle Analysen sind sauber, alle Tests grün.

0
flutter analyze Fehler
7/7
Tests bestanden
0
offene RLS-Lücken
  • flutter analyze ohne Warnings oder Fehler
  • 7/7 Unit- & Integration-Tests sind grün
  • Riverpod 2.0 Codegen für typsicheres State Management
  • GoRouter Migration für stabile Deep-Links
  • CachedNetworkImage-Integration in der gesamten App
  • Datenbankoptimierung: Indexierung aller Foreign Keys