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!

Authentik logo
Mattermost logo
Keycloak logo
Mail.ru logo
Freshbooks logo
Apple logo
LinkedIn logo
LINE logo
Webex logo
Azure Active Directory B2C logo
Reddit logo
Trakt logo
Kinde logo
BoxyHQ SAML logo
Twitter logo
Auth.js © Balázs Orbán and Team - 2025