Production Checklist für AI-gebaute Apps

Production Checklist für Vibe-Coded Apps: 25 Punkte vor dem Go-Live

10 Min. Lesezeit vibe-coding

Du hast deine App gebaut. Mit Lovable, Bolt, Cursor oder einem anderen AI-Tool. Sie funktioniert. Jetzt willst du live gehen.

Aber zwischen "funktioniert auf meinem Bildschirm" und "ist bereit für echte Nutzer" liegen konkrete Schritte. Diese Checklist gibt dir alle 25 Punkte — geordnet nach Priorität, erklärt ohne Fachjargon.

Druck sie aus, geh sie Punkt für Punkt durch. Jedes "Nein" ist ein Risiko, das du vor dem Launch kennen solltest.

Kategorie 1: Security (Kritisch)

Diese Punkte schützen deine Nutzer und dich vor Datenverlust, Missbrauch und rechtlichen Konsequenzen. Kein Go-Live ohne diese Basis.

1. Supabase Row Level Security (RLS) aktiv

Sind für alle Tabellen RLS-Policies konfiguriert? Ohne RLS kann jeder mit der Supabase-URL auf deine gesamte Datenbank zugreifen. Jede einzelne Tabelle braucht eine Policy — auch die, die du "nur intern" nutzt.

2. API-Endpunkte abgesichert

Kann jemand deine API-Endpunkte direkt aufrufen, ohne eingeloggt zu sein? Teste es: Öffne die Browser-Konsole, kopiere die URL eines API-Calls und rufe sie in einem neuen Tab auf. Wenn du Daten siehst, ohne eingeloggt zu sein, hast du ein Problem.

3. Secrets nicht im Quellcode

Suche in deinem Code nach API-Keys, Datenbank-Passwörtern und Tokens. Stehen sie direkt im Code? Dann müssen sie in Umgebungsvariablen verschoben werden. Prüfe besonders: Supabase-Keys, Stripe-Keys, SendGrid-Keys, OAuth-Credentials.

4. Security-Headers gesetzt

Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, Strict-Transport-Security — diese Headers schützen deine App vor gängigen Angriffen. Null von 15 getesteten Vibe-Coding-Apps hatten sie implementiert.

5. CSRF-Schutz implementiert

Cross-Site Request Forgery erlaubt es Angreifern, Aktionen im Namen deiner Nutzer auszuführen. Dein Framework hat wahrscheinlich eingebauten CSRF-Schutz — er muss nur aktiviert werden.

6. Authentifizierung korrekt

Funktioniert der Login sicher? Werden Passwörter gehasht gespeichert? Gibt es Session-Management? Kann sich ein Nutzer nicht als ein anderer ausgeben?

7. Autorisierung geprüft

Kann Nutzer A auf Daten von Nutzer B zugreifen? Teste es mit zwei verschiedenen Accounts. Sind Admin-Bereiche vor normalen Nutzern geschützt?

Kategorie 2: Datenschutz & DSGVO

In Deutschland nicht optional. Sobald deine App personenbezogene Daten verarbeitet — und das tut sie bei jedem Login — bist du verantwortlich.

8. Datenschutzerklärung vorhanden

Eine Datenschutzerklärung, die zu deiner App passt. Nicht eine generische Vorlage, die du von einer anderen Website kopiert hast. Sie muss beschreiben, welche Daten du sammelst, warum und wie lange.

9. Impressum vorhanden

In Deutschland Pflicht für jede kommerzielle Website. Name, Adresse, Kontakt. Kein Verstecken hinter einem Postfach.

10. Speicherort der Daten geklärt

Wo speichert Supabase deine Daten? Standardmäßig in den USA. Für DSGVO-Konformität brauchst du entweder einen EU-Standort oder einen Auftragsverarbeitungsvertrag (AVV) mit Supabase.

11. Einwilligungsmanagement

Cookie-Banner, Tracking-Einwilligung, Analytics — alles muss vor der Datenerfassung eingeholt werden. Nicht nachträglich.

12. Löschkonzept

Können Nutzer ihre Daten einsehen und löschen lassen? Du brauchst mindestens einen Prozess dafür, auch wenn er manuell ist.

Kategorie 3: Stabilität & Fehlerbehandlung

Echte Nutzer machen Dinge, die du nicht erwartest. Deine App muss damit umgehen können, ohne abzustürzen.

13. Formular-Validierung

Was passiert, wenn ein Formular leer abgeschickt wird? Mit falschen Daten? Mit extrem langen Eingaben? Teste jeden Input und stelle sicher, dass die App sinnvoll reagiert.

14. Fehlermeldungen statt weißer Seiten

Wenn etwas schiefgeht — und das wird es — sieht der Nutzer eine verständliche Meldung. Nicht einen weißen Bildschirm, nicht eine kryptische Fehlermeldung, nicht nichts.

15. API-Fehler abgefangen

Was passiert, wenn die Datenbank nicht erreichbar ist? Wenn ein Drittanbieter-Service nicht antwortet? Wenn ein API-Call länger als 10 Sekunden dauert? Deine App braucht Timeouts und Fallbacks.

16. Ladezustände implementiert

Nutzer brauchen visuelles Feedback. Wenn eine Aktion länger dauert, muss ein Spinner oder eine Fortschrittsanzeige zeigen, dass etwas passiert. Sonst klicken sie nochmal — und erzeugen Duplikate.

Kategorie 4: Performance

Dein Prototyp läuft für einen Nutzer. Production bedeutet: gleichzeitig.

17. Bilder optimiert

Sind Bilder komprimiert? Werden sie im WebP-Format ausgeliefert? Werden sie lazy geladen? Große, unkomprimierte Bilder sind der häufigste Grund für langsame Ladezeiten.

18. Datenbank-Indizes gesetzt

Wenn Tabellen wachsen, werden Abfragen ohne Indizes langsam. Für jede Spalte, nach der häufig gefiltert oder sortiert wird, braucht es einen Index.

19. Rate-Limiting aktiv

Kann ein einzelner Nutzer hunderte API-Calls pro Sekunde machen? Ohne Rate-Limiting kann eine einzelne Person deinen Server überlasten — absichtlich oder versehentlich.

Kategorie 5: Hosting & Domain

Eine App auf einer Lovable-Subdomain signalisiert: Prototyp. Eine eigene Domain signalisiert: Produkt.

20. Eigene Domain konfiguriert

Deine App läuft auf deiner eigenen Domain. Nicht auf meinname.lovable.app oder einer Netlify-Subdomain.

21. SSL/HTTPS aktiv

Die Verbindung ist verschlüsselt. In der Browser-Leiste steht ein Schloss-Symbol. Ohne HTTPS warnen moderne Browser deine Nutzer aktiv.

22. Environment Variables im Hosting

Alle Secrets — API-Keys, Datenbank-Credentials, Service-Tokens — liegen in den Umgebungsvariablen deines Hosting-Anbieters. Nicht im Code, nicht in einer .env-Datei im Repository.

Kategorie 6: Monitoring & Backups

Wenn etwas schiefgeht, musst du es erfahren — bevor deine Nutzer sich beschweren.

23. Error-Tracking eingerichtet

Ein Tool wie Sentry meldet dir sofort, wenn ein Fehler in deiner App auftritt. Mit Details: welcher Fehler, wo, wann, bei welchem Nutzer. Ohne Error-Tracking fliegst du blind.

24. Uptime-Monitoring aktiv

Ist deine App erreichbar? Ein einfacher Monitoring-Service prüft das alle paar Minuten und benachrichtigt dich, wenn sie ausfällt.

25. Backups konfiguriert

Werden deine Datenbank-Daten regelmäßig gesichert? Sind die Backups wiederherstellbar? Supabase bietet integrierte Backups — aber nur ab dem Pro-Plan. Im Free-Plan bist du selbst verantwortlich.

Wie du diese Checklist nutzt

Geh jeden Punkt durch und markiere:

  • Ja — erledigt und geprüft
  • Nein — muss noch gemacht werden
  • Weiß ich nicht — braucht Klärung

Wenn du bei mehr als fünf Punkten "Nein" oder "Weiß ich nicht" antwortest, solltest du vor dem Go-Live mit einem Entwickler sprechen. Nicht weil deine App schlecht ist — sondern weil diese Punkte deine Nutzer und dich schützen.

Du musst das nicht allein machen

Die meisten dieser Punkte sind für einen erfahrenen Entwickler Standardarbeit. Was für dich wie eine endlose Liste aussieht, ist für jemanden mit dem richtigen Know-how ein paar Tage strukturierter Arbeit.

In meinem Artikel Vibe Code Cleanup: Was ein Developer mit deinem AI-Code macht beschreibe ich den genauen Ablauf eines solchen Cleanups. Und in Was kostet ein Vibe Code Cleanup? findest du eine transparente Aufschlüsselung der typischen Aufwände.

Willst du wissen, wo deine App steht? Schick mir den Link zu deiner App oder deinem GitHub-Repo. Ich gehe die Checklist mit dir durch — 30 Minuten, kostenlos, ohne Verpflichtung.

Erstgespräch vereinbaren