@cnippet-helm/auth-better-auth
v0.4.0
Published
Better-Auth adapter for Admin Kit
Readme
@cnippet-helm/auth-better-auth
Better Auth adapter for Admin Kit. Implements the AuthAdapter interface so Admin Kit can read the current session from Better Auth.
Install
pnpm add @cnippet-helm/auth-better-auth better-authUsage
// lib/auth.ts — your Better Auth instance
import { betterAuth } from "better-auth";
import { prismaAdapter } from "better-auth/adapters/prisma";
import { db } from "@/lib/db";
export const auth = betterAuth({
database: prismaAdapter(db, { provider: "postgresql" }),
emailAndPassword: { enabled: true },
});// src/lib/admin.config.ts
import { defineConfig } from "@cnippet-helm/core";
import { betterAuthAdapter } from "@cnippet-helm/auth-better-auth";
import { headers } from "next/headers";
import { auth } from "@/lib/auth";
import { db } from "@/lib/db";
export const adminConfig = defineConfig({
basePath: "/admin",
db,
auth: betterAuthAdapter({
auth,
getHeaders: () => headers(),
}),
resources: [],
});API
betterAuthAdapter(options: {
auth: BetterAuthInstance; // your betterAuth({ ... }) instance
getHeaders: () => Headers | Promise<Headers>; // use next/headers in App Router
}): AuthAdapterThe adapter exposes:
getSession()— callsauth.api.getSession({ headers }), returns{ user: { id, email, name, ... } }ornullgetLoginUrl()— returns"/api/auth/sign-in"getLogoutUrl()— returns"/api/auth/sign-out"
See the Admin Kit docs for full usage.
