Packages
The publishable Better IAM packages with their subpath exports, runtime dependencies, and peer dependencies.
The workspace publishes one package per concern, plus the umbrella better-iam package that depends on all of them
and re-exports each as a subpath. Every package is ESM, ships TypeScript declarations, and requires Node.js 22.12 or
newer. Pick individual packages when a service needs only part of the platform; see
Installation for the subpath map.
better-iam0.1.0Umbrella package: installs every package and exposes them as subpath imports.
/core/auth/auth/templates/server/session-tokens/oauth/saml/scim/adapter-postgres/adapter-sqlite/adapter-libsql/client/cli/client/passkeys/projects/react/next/next/edge/next/client/nestjs/nestjs/testing/vue/svelte/svelte/kit/middleware/express/hono/fastify/react-router/client/session/mcp/a2aPeers: @nestjs/common, @nestjs/core, next, react, vue, svelte, @sveltejs/kit, react-router
@better-iam/a2a0.1.0Agent2Agent (A2A) support: IAM-attested agent cards, card verification and discovery, and authorization for A2A servers.
@better-iam/adapter-libsql0.1.0libSQL / Turso storage adapter.
@better-iam/adapter-postgres0.1.0PostgreSQL storage adapter.
@better-iam/adapter-sqlite0.1.0SQLite storage adapter (better-sqlite3).
@better-iam/auth0.1.0Passwords, sessions, MFA, passkeys, magic links, recovery, and delivery templates.
/templates@better-iam/cli0.1.0The `better-iam` command line: migrations, bootstrap, audits, config as code, jobs.
@better-iam/client0.1.0Typed browser client with session store and passkey helpers.
/passkeys/session@better-iam/core0.1.0Models, the policy engine, the storage contract, the audit chain, and shared errors.
/conformance@better-iam/mcp0.1.0Tool-level authorization for Model Context Protocol servers: Better IAM credentials, agents and OAuth tokens.
@better-iam/middleware0.1.0Framework-neutral middleware core with Express, Hono, and Fastify adapters.
/express/hono/fastify@better-iam/nestjs0.1.0NestJS module, guard, decorators, and testing utilities.
/testingPeers: @nestjs/common, @nestjs/core, reflect-metadata, rxjs
@better-iam/next0.1.0Next.js App Router helpers: guarded pages, routes, actions, and edge checks.
/edge/clientPeers: next, react
@better-iam/nuxt0.1.0Nuxt module and h3 helpers.
/h3Peers: nuxt, vue
@better-iam/oauth0.1.0OAuth/OIDC authorization server, resource-server helpers, and Shared Signals.
@better-iam/projects0.1.0Reference tenant-scoped Projects plugin.
@better-iam/react0.1.0React provider, hooks, and permission-gated components.
Peers: react
@better-iam/react-router0.1.0React Router (framework mode) middleware, guarded loaders, and actions.
Peers: react-router
@better-iam/saml0.1.0SAML 2.0 service provider with tenant-managed connections.
@better-iam/scim0.1.0SCIM 2.0 inbound provisioning and outbound provisioning to applications.
@better-iam/server0.1.0The `betterIam()` factory: tenants, identities, authorization, governance, HTTP API.
/assertions/session-tokens@better-iam/svelte0.1.0Svelte stores and SvelteKit hooks, guards, and actions.
/kitPeers: @sveltejs/kit, svelte
@better-iam/vue0.1.0Vue plugin, composables, and the `IamCan` component.
Peers: vue
How the packages depend on each other
Arrows point from a package to the workspace packages it depends on (generated from the manifests; the umbrella
package, which depends on all of them, is omitted). Browser-side packages (client, react, vue, svelte)
never depend on server or auth, so they never pull server code or native modules into a bundle.
@better-iam/core has no dependencies and runs in any JavaScript runtime, which is why the
policy playground can evaluate policies in your browser with the same engine the server uses.
Was this page helpful?
Last updated on