Packages
Convex Integration
Platform-runtime reference for self-hosting Banata on Convex.
@banata-auth/convex is the platform-runtime package behind Banata.
Use it when you are:
- operating the hosted Banata service
- self-hosting the Banata platform
- working on Banata's internal runtime and plugins
Do not treat it as the default customer-app integration path.
What It Is Responsible For
Inside a Banata platform deployment, @banata-auth/convex provides:
- the packaged Convex component registration
- packaged component schema
- packaged component migrations
- Better Auth runtime helpers
- the custom Banata plugins for emails, API keys, projects, RBAC, orgs, vault, and audit logs
The platform keeps a thin local convex/banataAuth/ folder only for the pieces that cannot live entirely inside the component environment.
Minimal Local Files
text
convex/
|-- convex.config.ts
|-- auth.config.ts
|-- authNode.ts
|-- http.ts
`-- banataAuth/
|-- auth.ts
|-- adapter.ts
`-- schema.tsWhy these remain local:
banataAuth/auth.tsbinds deployment env and runtime configbanataAuth/adapter.tscloses over the local auth factorybanataAuth/schema.tsis still needed as a local codegen anchor for Convex components
Everything else should come from the package.
Product Boundary
The important product rule is:
- apps authenticate through a Banata dashboard project
- project scope comes from a project-scoped API key
- self-hosting still keeps that same dashboard-first flow
So @banata-auth/convex powers the Banata platform, while customer apps normally use: