Skip to content
Migrating from NextAuth.js v4? Read our migration guide.
Auth.js
Authentication for the Web.
Free and open source.
// auth.ts
import NextAuth from "next-auth"
import GitHub from "next-auth/providers/github"
export const { auth, handlers } = NextAuth({ providers: [GitHub] })

// middleware.ts
export { auth as middleware } from "@/auth"

// app/api/auth/[...nextauth]/route.ts
import { handlers } from "@/auth"
export const { GET, POST } = handlers
// src/auth.ts
import { SvelteKitAuth } from "@auth/sveltekit"
import GitHub from '@auth/sveltekit/providers/github'

export const { handle } = SvelteKitAuth({
  providers: [GitHub],
})

// src/hooks.server.ts
export { handle } from "./auth"
// server.ts
import { express } from "express"
import { ExpressAuth } from "@auth/express"
import GitHub from "@auth/express/providers/github"

const app = express()

app.use("/auth/*", ExpressAuth({ providers: [GitHub] }))
// src/routes/plugin@auth.ts
import { QwikAuth } from "@auth/qwik"
import GitHub from "@auth/qwik/providers/github"
export const { onRequest, useSession } = QwikAuth$(() => ({ providers: [GitHub] }))

Supports all these providers and more!

Trakt logo
Webex logo
WorkOS logo
Keycloak logo
EVE Online logo
Twitch logo
Wikimedia logo
LinkedIn logo
DuendeIdentityServer6 logo
ZITADEL logo
TikTok logo
ClickUp logo
Pipedrive logo
Patreon logo
42 School logo
Auth.js © Balázs Orbán and Team - 2025