The foundation for multi-tenant apps.
Next.js + Hono + Neon + Drizzle + Better Auth. Each tenant gets its own subdomain or custom domain, with separate staff and customer logins, isolated by Postgres row-level security.
No credit card required · Free to start
Isolation model
Forced RLS
System roles
3 + custom
Domain support
Sub + custom
Framework
Next.js 15
Everything a multi-tenant SaaS needs, out of the box.
A production-shaped starting point, not a toy scaffold.
Multi-tenant by default
Every signup provisions its own workspace, subdomain, and membership roles.
Isolated at the database
Forced Postgres row-level security keeps every tenant's data apart — not just app-level filters.
Custom domains
Tenants can verify their own domain and serve the same app under their own brand.
Built to extend
Typed contracts, RBAC, and a shared UI kit make new tenant-scoped modules fast to add.
A production-shaped starting point, not a toy scaffold.
Without a foundation
With Agora
Built by developers who'd rather ship the product.
Illustrative feedback from engineers who've built on this scaffold.
“The forced row-level security saved us weeks — we didn't have to write or trust a single app-level tenant filter.”
Priya M.
Backend engineer
“Copying the project pattern for our first real module took an afternoon, not a sprint.”
Dae-ho K.
Full-stack developer
“Roles, custom domains, and typed contracts were already wired — we shipped our MVP straight on top.”
Sam R.
Founding engineer
Designed around real tenant roles.
Three system roles, enforced server-side — plus custom roles a tenant can compose from the same permissions.
Owner
Every permission, including billing and transferring or deleting the tenant.
Admin
Everything except billing and tenant-level actions like delete or transfer.
Staff
Scoped to the essentials — create projects, no admin surface.
Get started in three steps.
Create a workspace
Sign up provisions your tenant, subdomain, and makes you the owner.
Invite your team
Assign owner, admin, or staff roles — or compose a custom role from the same permissions.
Build your first module
Copy the project pattern to ship a new tenant-scoped table, route, and page.
Common questions.
How is tenant data isolated?
Can each tenant use a custom domain?
What handles authentication?
Is this a hosted product?
How do roles and permissions work?
What does it cost to run?
Ready to spin up your workspace?
Create a tenant in seconds — you'll get your own subdomain, owner account, and dashboard immediately.
Create a workspace