Part of Vibe code rescue
Lovable writes a React front end on Supabase. The gaps sit where a preview never looks: who can read which rows, which keys reach the browser, what the server checks.
How do you take a Lovable app to production?
Treat the Supabase database as the security boundary, because in a Lovable app it is. The browser talks to Supabase directly, so every table needs row-level security with the right policies, and no service role key in the bundle. Then migrations for the schema and tests for the edge functions.
Who it is for
Included
Timeline
Under 24 hours
We read the repository and the Supabase project, and treat any key ever committed to git as exposed.
Days
Row-level security on every table with user data, shipped with its policies so the app does not go blank.
Weeks
Migrations for staging and production, and tests on the edge functions that take money.
At handover
A pipeline that gates every merge, and rules for what to prompt and what a developer reviews.
Price
If rebuilding outside Lovable is cheaper than fixing it, the audit says so first.
Results
“They are honest and they give us ideas about how to improve our entire system.”
Guides
Questions
Lovable apps share one stack and one set of failure modes. Lovable is past 60 million projects, and 4 in 5 of the people building on it are not technical.
Not by design, but its security lives in Supabase policies, where a prompt rarely looks. CVE-2025-48757 recorded the gap: 170 of 1,645 Lovable showcase apps let anyone read user data. Lovable has said apps that handle sensitive data still need outside security experts.
The anon key is meant to be public. The service role key skips row-level security, so if it is in the bundle, we rotate it and move it into an edge function secret on day one.
Often, yes: screens, copy and layout stay in Lovable; policies, migrations and edge functions do not. A prompt that undoes a fix fails a check.
Usually not; it is Postgres and can carry a production app. It needs policies on every table, migrations in the repository and a backup someone has restored once.
Thirty minutes with a builder, not a salesperson, to work out whether we are the right team for it. If we are not, we will say so.