Sign In

@authon/nextjs

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@authon/nextjs

Authon Next.js SDK — middleware, server helpers, and React components

Source
npmnpm
Version
0.1.15
Version published
Weekly downloads
21
40%
Maintainers
1
Weekly downloads
 
Created
Source

@authon/nextjs

Next.js SDK for Authon — middleware, server helpers, and React components for App Router.

Install

npm install @authon/nextjs
# or
pnpm add @authon/nextjs

Requires next >= 14.0.0.

Quick Start

1. Middleware

Protect routes at the edge:

// middleware.ts
import { authMiddleware } from '@authon/nextjs';

export default authMiddleware({
  publishableKey: process.env.NEXT_PUBLIC_AUTHON_KEY!,
  publicRoutes: ['/', '/about', '/pricing', '/sign-in'],
});

export const config = {
  matcher: ['/((?!_next|.*\\..*).*)'],
};

2. Provider

Wrap your layout:

// app/layout.tsx
import { AuthonProvider } from '@authon/nextjs';

export default function RootLayout({ children }: { children: React.ReactNode }) {
  return (
    <html>
      <body>
        <AuthonProvider publishableKey={process.env.NEXT_PUBLIC_AUTHON_KEY!}>
          {children}
        </AuthonProvider>
      </body>
    </html>
  );
}

3. Client Components

Use all @authon/react hooks and components:

'use client';

import { useUser, SignedIn, SignedOut, UserButton } from '@authon/nextjs';

export function Header() {
  return (
    <nav>
      <SignedIn><UserButton /></SignedIn>
      <SignedOut><a href="/sign-in">Sign In</a></SignedOut>
    </nav>
  );
}

4. Server-side

import { currentUser, auth } from '@authon/nextjs/server';

// In a Server Component or Route Handler
export async function GET() {
  const user = await currentUser();
  if (!user) return new Response('Unauthorized', { status: 401 });
  return Response.json({ user });
}

// Get the full auth state
const { userId, sessionId, getToken } = await auth();

API Reference

Client Exports

Re-exports all components and hooks from @authon/react:

AuthonProvider, useAuthon, useUser, SignedIn, SignedOut, UserButton, SignIn, SignUp, Protect

Server Exports (@authon/nextjs/server)

FunctionReturnsDescription
currentUser()Promise<AuthonUser | null>Get the current user from cookies
auth()Promise<AuthState>Get full auth state (userId, sessionId, getToken)

Middleware

FunctionDescription
authMiddleware(options)Edge middleware that redirects unauthenticated users

Documentation

authon.dev/docs

License

MIT

Keywords

authon

FAQs

Package last updated on 23 Feb 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts