What an interface is
An interface is one front-end of your app — technically a Vibe project. Your Tadabase app is the backend (tables, fields, workflows, roles, security). An interface is a separate, deployed user-facing app built on top of that backend. It has its own code, its own address, and its own settings, but it reads and writes the same data through the same Domain API.
All interfaces of the same app share one dataset and one set of security rules. They just present it differently.
One interface, or several?
Default to one. Reach for several only when the surfaces are genuinely different products, not just different permissions.
| Situation | Recommendation |
|---|---|
| Different users see different records / buttons | One interface + roles and RLS |
| A public customer portal vs an internal admin console | Separate interfaces (different brand, URL, sign-in) |
| White-label — a branded front-end per client | One interface per tenant, same backend |
| Turn an AI feature on in one place but not another | Separate interfaces |
What splitting costs you
Every interface is another front-end to build and maintain. Splitting never duplicates your data or your security — those always stay in the one shared backend — but it does multiply the UI you keep in sync. Start with one; add interfaces when a real second audience appears.