Supabase-Backend einrichten
Erstelle ein Supabase-Projekt. Für eine Aufgaben-App erstellst du folgende Tabelle:
CREATE TABLE tasks ( id bigserial PRIMARY KEY, title text NOT NULL, completed boolean DEFAULT false, user_id uuid REFERENCES auth.users(id), created_at timestamptz DEFAULT now() );
ALTER TABLE tasks ENABLE ROW LEVEL SECURITY; CREATE POLICY "user owns tasks" ON tasks FOR ALL USING (auth.uid() = user_id);
Row Level Security (RLS) ist entscheidend für DSGVO-Konformität, mit RLS kann jeder Nutzer nur seine eigenen Zeilen sehen und bearbeiten, direkt auf Datenbankebene. Das ist einer der Gründe, warum wir für deutsche Kunden mit DSGVO-Anforderungen immer Supabase gegenüber Firebase bevorzugen. Kopiere deine Supabase-Projekt-URL und den Anon-Key, du brauchst sie in FlutterFlow.
FlutterFlow mit Supabase verbinden
In FlutterFlow gehe zu Settings → Supabase. Füge deine Supabase-URL und den Anon-Key ein. FlutterFlow authentifiziert sich und zeigt dein Datenbankschema.
Du siehst deine Tasks-Tabelle mit allen Spalten. FlutterFlow generiert automatisch typisierte Query-Builder für jede Tabelle, kein SQL im Frontend nötig. Das ist einer der großen Vorteile dieser Kombination: Du gestaltest die UI visuell in FlutterFlow, während Supabase die gesamte Datenlogik übernimmt.
Tipp: Benenne dein Supabase-Projekt so, dass es das Kundenprojekt widerspiegelt, z.B. "company-app-prod". Das erleichtert die Wartung und macht es für alle Teammitglieder eindeutig.
Authentifizierung aufbauen
Verwende FlutterFlows Supabase-Auth-Aktionen für Login und Registrierung. Erstelle: 1. Eine Login-Seite mit E-Mail-/Passwortfeldern und einem "Anmelden"-Button 2. Eine Registrierungsseite mit E-Mail, Passwort und Passwort-Bestätigung 3. Verknüpfe die Button-OnTap-Aktionen mit "Log In with Email" und "Create Account with Email" (beide Supabase-Auth-Aktionen)
Richte die "Initial Page"-Logik ein: Wenn der Nutzer authentifiziert ist → Startseite, sonst → Login-Seite.
Für Apps, die auf deutsche Unternehmenskunden ausgerichtet sind, kannst du auch eine ELSTER-Authentifizierung oder Single Sign-On mit dem Microsoft-Azure-AD des Unternehmens via Supabase SAML ergänzen, das erhöht die Glaubwürdigkeit bei Enterprise-Kunden sofort.
Aufgabenliste bauen
Erstelle eine ListView-Komponente. Setze die Datenquelle auf deine Supabase-Tasks-Tabelle. Füge einen Filter hinzu: user_id = currentAuthUser.uid (FlutterFlow füllt das automatisch aus).
Für jedes Listenelement: zeige den Aufgabentitel, eine Checkbox für den Abgeschlossen-Status und einen Löschen-Button. Verknüpfe die Checkbox mit einer Supabase-UPDATE-Aktion (setze completed = true/false). Verknüpfe den Löschen-Button mit einer Supabase-DELETE-Aktion.
Design-Tipp: Füge einen leeren Zustand mit einer handlungsorientierten Nachricht hinzu, z.B. "Noch keine Aufgaben. Erstelle deine erste!", anstatt einer leeren Liste. Das verbessert die Aktivierungsrate deutlich und wirkt professionell.
Echtzeit-Subscriptions hinzufügen
In FlutterFlows Supabase-Einstellungen aktiviere Realtime für die Tasks-Tabelle. In deiner Aufgabenlisten-Komponente aktiviere "Realtime" in der Datenquelle.
Wenn eine Aufgabe jetzt hinzugefügt, aktualisiert oder gelöscht wird (von beliebigen Geräten), aktualisiert sich deine Liste automatisch, kein manuelles Polling nötig. Das ist eine der Stärken von Supabase gegenüber traditionellem REST: du bekommst Live-Updates ohne zusätzliche Infrastruktur.
Für Team-Apps und Kollaborationsfunktionen, zum Beispiel das Teilen von Aufgaben mit Kollegen, kannst du dies mit Supabase Presence erweitern, um anzuzeigen, welche Nutzer gerade online sind.
Im App Store und Google Play veröffentlichen
In FlutterFlow gehe zu Run → Build → iOS und Android.
Für iOS: Du brauchst ein Apple Developer-Konto (99 USD/Jahr). FlutterFlow generiert die .ipa-Datei. Einreichen über Xcode oder Transporter. Die App Store-Überprüfung dauert für die erste Einreichung 1-3 Tage.
Für Android: FlutterFlow generiert eine signierte .aab-Datei. Einreichen über die Google Play Console. Updates werden normalerweise innerhalb von 24 Stunden überprüft.
Ein wichtiger Schritt für deutsche Apps: Stelle sicher, dass deine App Store- und Google Play-Beschreibung auf Deutsch ist, wenn deine primäre Zielgruppe deutschsprachig ist. Das verbessert die organische Sichtbarkeit in den App-Stores erheblich.