Warum Supabase statt Firebase?
Firebase ist Googles Produkt — NoSQL, proprietär, mit einem Preismodell, das bei Skalierung unvorhersehbar werden kann. Ein Startup, das einen Traffic-Spike erlebt, kann über Nacht eine Rechnung von 10.000 € erhalten, ohne Vorwarnung. Das ist ein reales operatives Risiko.
Supabase ist Open-Source, gebaut auf PostgreSQL (relational), mit einem vorhersehbaren Preismodell und der Möglichkeit, bei Bedarf selbst zu hosten.
Für No-Code-Apps bietet Supabase mehrere entscheidende Vorteile: - Native SQL: du kannst echte SQL-Abfragen für komplexe Analysen schreiben - Autogenerierte API: Supabase erstellt automatisch eine REST-API und eine GraphQL-API aus deinem Schema - Row-Level-Security: Zeilenstufen-Sicherheit in der Datenbank - Realtime: WebSocket-Abonnements bei Datenänderungen - Storage: Dateiverwaltung mit Sicherheits-Policies - Edge Functions: serverlose TypeScript-Funktionen für Backend-Logik - DSGVO-Konformität: EU-Region verfügbar (Frankfurt), Daten bleiben in Europa gemäß Schrems-II
Deine erste Datenbank erstellen
Nach dem Erstellen eines Kontos auf supabase.com und einem neuen Projekt:
1. Eine Tabelle über die Benutzeroberfläche erstellen Table Editor → New Table → Name vergeben, Spalten hinzufügen.
Empfohlene Spalten, die immer eingefügt werden sollten: - id: UUID (Standard: gen_random_uuid()) - created_at: timestamp with timezone (Standard: now()) - updated_at: timestamp with timezone - user_id: UUID (Fremdschlüssel zu auth.users)
2. Testdaten einfügen Table Editor → Insert Row → Felder ausfüllen. Oder über den SQL-Editor.
3. Die API testen Supabase generiert automatisch eine REST-API. Im API-Bereich deines Dashboards findest du URLs und Code-Beispiele für den Zugriff auf deine Daten von WeWeb, FlutterFlow oder einem beliebigen Frontend. Diese Auto-Generierung der API spart Tage an Entwicklung im Vergleich zu einem traditionellen Backend-Ansatz.
Supabase-Authentifizierung
Supabase Auth verwaltet vollständige Authentifizierung: Registrierung, Anmeldung, Passwort-Reset und OAuth (Google, GitHub, Apple...).
Google OAuth in 5 Minuten konfigurieren: 1. Supabase Dashboard → Authentication → Providers → Google → Enable 2. OAuth-App in Google Cloud Console erstellen, Client ID und Secret abrufen 3. In Supabase einfügen, Supabase Callback-URL als Redirect-URL in Google hinzufügen 4. In WeWeb handhabt das Supabase-Plugin den OAuth-Flow automatisch
Magic Link (Anmeldung ohne Passwort): Eines der beliebtesten Features für B2B-Nutzer. Der Nutzer gibt seine E-Mail ein, erhält einen Link, klickt und ist angemeldet. Keine Passwörter zu verwalten. Wird in Supabase → Authentication → Email → Enable Magic Links aktiviert.
Für deutsche B2B-Apps, die sich an große Unternehmen richten, erwäge auch SSO (SAML 2.0 verfügbar im Team-Plan). Viele deutsche Enterprise-Kunden verlangen, dass Mitarbeiter sich mit der bestehenden Identitätslösung des Unternehmens über Azure AD oder Okta anmelden.
Row-Level-Security: Deine Daten schützen
RLS ist der Mechanismus, der garantiert, dass Nutzer nur die Daten sehen, zu denen sie berechtigt sind. Es ist Supabase's Killer-Feature für Multi-Tenant-SaaS.
RLS auf einer Tabelle aktivieren: ```sql ALTER TABLE projects ENABLE ROW LEVEL SECURITY; ```
Einfache Policy — jeder Nutzer sieht nur seine eigenen Projekte: ```sql CREATE POLICY "Users see own projects" ON projects FOR ALL USING (user_id = auth.uid()); ```
Multi-Tenant-Policy — Organisationsmitglieder sehen Organisationsprojekte: ```sql CREATE POLICY "Org members see org projects" ON projects FOR SELECT USING ( org_id IN ( SELECT org_id FROM memberships WHERE user_id = auth.uid() ) ); ```
Goldene Regel: aktiviere RLS auf ALLEN deinen Tabellen von Anfang an. RLS auf einer Produktionstabelle für schnelles Debugging zu deaktivieren ist ein potenzieller Datenschutzverstoß.
Aus DSGVO- und Schrems-II-Perspektive ist RLS ein starkes Argument bei Sicherheitsaudits: Datenschutz ist auf Datenbankebene garantiert, nicht nur auf Anwendungsebene. Selbst wenn dein Anwendungscode einen Bug hat, kann ein Kunde niemals auf die Daten eines anderen Kunden zugreifen.
Supabase mit WeWeb und FlutterFlow
Mit WeWeb: WeWebs Supabase-Plugin verbindet sich mit deiner Supabase-URL und Anon-Key. Einmal verbunden: - Collections erstellen, die an deine Tabellen gebunden sind - Realtime auf Collections aktivieren, die sich live aktualisieren sollen - Supabase-Actions für CRUD-Operationen verwenden - RLS-Policies werden automatisch basierend auf dem angemeldeten Nutzer angewendet
Mit FlutterFlow: FlutterFlow hat eine native Supabase-Integration. In Settings → Integrations → Supabase: - URL und Anon-Key einfügen - FlutterFlow importiert automatisch dein Tabellenschema - Query-Widgets zum Lesen von Daten und Action-Flows zum Schreiben verwenden - Supabase-Authentifizierung wird über FlutterFlows native Auth-Komponenten verwaltet
In beiden Fällen werden RLS-Policies automatisch basierend auf dem JWT des angemeldeten Nutzers angewendet. Du brauchst keine Autorisierungslogik im Frontend zu schreiben — die Datenbank handhabt das für dich.
Supabase-Preise 2025
Free-Tier: ausreichend für ein MVP - 500 MB Datenbank - 1 GB Dateispeicher - 50.000 Auth-Nutzer - 500.000 Edge-Function-Aufrufe/Monat - Kein SLA, automatische Pause nach 1 Woche Inaktivität
Pro: 25 USD/Monat - 8 GB Datenbank - 100 GB Dateispeicher - Keine automatische Pause - SLA 99,9 % - Tägliche Backups - Zugriff auf erweiterte Logs
Team: 599 USD/Monat - SSO, erweiterte Logs, SLA 99,99 % - SOC2-Konformität - Priority-Support
Für fast alle Projekte in der Launch-Phase ist der Free-Tier, dann Pro für 25 USD/Monat der Standardweg. Der Pro-Plan ist oft bereits bei den ersten zahlenden Kunden rentabel — die Sicherheit täglicher automatischer Backups und 99,9 % SLA ist 25 € pro Monat wert. EU-Region ist auf allen bezahlten Plänen verfügbar — wähle Frankfurt oder Irland, um DSGVO/Schrems-II-Konformität von Tag eins sicherzustellen.