$ ls ./menu

© 2025 ESSA MAMDANI

cd ../blog
2 min read

Migrating from NextAuth to Better Auth: The 2026 Standard

Audio version coming soon
Migrating from NextAuth to Better Auth: The 2026 Standard
Verified by Essa Mamdani

Migrating from NextAuth to Better Auth: The 2026 Standard

The authentication landscape has shifted. For years, NextAuth (Auth.js) was the default reflex for Next.js developers. But in 2026, the demand for edge-ready, database-agnostic, and type-safe authentication has crowned a new king: Better Auth.

This is the exact migration protocol used across the Essa Mamdani command center.

Why the Shift?

NextAuth served us well, but its heavy dependency graph and sometimes convoluted adapter logic became a bottleneck. Better Auth brings:

  • Zero Egress/Edge Native: Runs seamlessly on Cloudflare Workers and Vercel Edge.
  • Plugin Ecosystem: 2FA, Passkeys, and Multi-tenant out of the box.
  • Absolute Type Safety: Built from the ground up for strict TypeScript environments.

The Migration Protocol

1. Strip the Old Wiring

Remove NextAuth and its adapters. Clean your package.json to eliminate the ghosts of legacy auth.

bash
1npm uninstall next-auth @auth/core
2npm install better-auth

2. Initialize the Core

Create your auth.ts inside lib/. Keep it modular.

typescript
1import { betterAuth } from "better-auth";
2import { Pool } from "pg";
3
4export const auth = betterAuth({
5    database: new Pool({ connectionString: process.env.DATABASE_URL }),
6    emailAndPassword: {
7        enabled: true,
8    },
9    socialProviders: {
10        github: {
11            clientId: process.env.GITHUB_CLIENT_ID,
12            clientSecret: process.env.GITHUB_CLIENT_SECRET,
13        }
14    }
15});

3. Route Handlers

Expose the endpoints in app/api/auth/[...all]/route.ts.

typescript
1import { auth } from "@/lib/auth";
2import { toNextJsHandler } from "better-auth/next-js";
3
4export const { GET, POST } = toNextJsHandler(auth);

Final Thoughts

Migration isn't just about swapping libraries; it's about reducing technical debt. By moving to Better Auth, we've stripped away unnecessary complexity and future-proofed the Essa Mamdani architecture for the next era of edge computing.

System Status: Secure. Identity: Verified.