Better Auth Integrations
Goals
- •Mount the Better Auth handler at
/api/auth/*(or a custom base path). - •Use framework helpers where available.
- •Ensure cookies and headers flow correctly in SSR and server actions.
Quick start
- •Create an
authinstance (seebetter-auth-core). - •Add a catch-all route for
/api/auth/*. - •Use a framework helper (or
auth.handler) to return a Response.
Next.js App Router
ts
import { auth } from "@/lib/auth";
import { toNextJsHandler } from "better-auth/next-js";
export const { GET, POST } = toNextJsHandler(auth);
Next.js Pages Router
ts
import { auth } from "@/lib/auth";
import { toNodeHandler } from "better-auth/node";
export const config = { api: { bodyParser: false } };
export default toNodeHandler(auth.handler);
Cookie handling in Next.js server actions
Use the nextCookies plugin so server actions set cookies correctly.
ts
import { betterAuth } from "better-auth";
import { nextCookies } from "better-auth/next-js";
export const auth = betterAuth({
// ...config
plugins: [nextCookies()],
});
Guardrails
- •Keep the base path consistent between server and client.
- •Prefer framework helpers when available.
- •Avoid running custom body parsers before the auth handler.
References
- •
toolchains/platforms/auth/better-auth/better-auth-integrations/references/nextjs.md - •
toolchains/platforms/auth/better-auth/better-auth-integrations/references/frameworks.md