adding-auth
Add authentication to a web application using NextAuth.js (Auth.js), including OAuth providers, session management, and protected routes.
How do I install this agent skill?
npx skills add https://github.com/spencerpauly/awesome-cursor-skills --skill adding-authIs this agent skill safe to install?
- Gen Agent Trust Hubpass
This skill provides standard, safe instructions for implementing authentication using Auth.js (formerly NextAuth.js). It follows industry best practices for secret management and utilizes well-known, trusted libraries.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
- ZeroLeakspass
Score: 93/100 · 2 sections analyzed
What does this agent skill do?
Add Authentication (Auth.js)
Use this skill when the user asks to add authentication, login, sign-up, OAuth, or session management.
Steps
-
Install dependencies
npm install next-auth@beta -
Generate an auth secret
npx auth secretThis adds
AUTH_SECRETto.env.local. -
Create the auth config — create
auth.tsin the project root:import NextAuth from "next-auth"; import GitHub from "next-auth/providers/github"; import Google from "next-auth/providers/google"; export const { handlers, signIn, signOut, auth } = NextAuth({ providers: [GitHub, Google], }); -
Add the route handler — create
app/api/auth/[...nextauth]/route.ts:import { handlers } from "@/auth"; export const { GET, POST } = handlers; -
Add environment variables for each provider:
AUTH_SECRET=... AUTH_GITHUB_ID=... AUTH_GITHUB_SECRET=... AUTH_GOOGLE_ID=... AUTH_GOOGLE_SECRET=... -
Add sign-in/sign-out UI — create components that call the
signInandsignOutserver actions, or use<Link href="/api/auth/signin">. -
Protect routes — use the
auth()function in server components or middleware:import { auth } from "@/auth"; export default async function ProtectedPage() { const session = await auth(); if (!session) redirect("/api/auth/signin"); return <div>Welcome {session.user?.name}</div>; } -
Add database adapter (optional) — if the user needs persistent sessions or user records, install a database adapter (e.g.
@auth/drizzle-adapter,@auth/prisma-adapter) and configure it in the auth config.
Notes
- Auth.js v5 works with Next.js App Router and Server Actions natively.
- For Pages Router, use
getServerSessioningetServerSidePropsanduseSessionon the client. - Add
NEXTAUTH_URLfor production deployments. - Store minimal user data in the session; fetch full profiles from the database when needed.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/spencerpauly/awesome-cursor-skills/adding-auth">View adding-auth on skillZs</a>