Blog

Aug 12, 2026

Where your app's data actually lives

A surprising number of apps people build with Breezify never need a database decision at all. When your prompt describes anything that saves state (a todo list, a set of habits, a CRM's contacts), Breezify wires up a real per-app data store behind a simple API automatically, so the generated code just reads and writes records without you naming a provider or writing a schema by hand.

That default store is genuinely persistent and genuinely scoped to your app; two different apps you build never see each other's data, and it survives redeploys and refines the same way a hand-provisioned database would. For the large majority of trackers, dashboards, and internal tools this is the entire data layer, and it costs nothing extra to use.

Some apps outgrow it on purpose. A real multi-tenant SaaS product, a dataset you need to query in ways the default store was not built for, or a team that already has data living in Postgres somewhere, all have good reasons to bring their own database instead. That's what the Supabase connector is for: you paste in your project's URL and service role key, and Breezify's generated backend routes talk to your real Postgres database instead of the built-in store.

The rule of thumb is simple: start with the default store, since it is free and it is already there the moment your app needs to save anything. Reach for Supabase specifically when you need relational queries, an existing dataset, or infrastructure you control outside of Breezify. You are never stuck picking one at the start; a refine can move an app from one to the other later.