---
id: tutorials
title: Tutorials and Explainers
---

## NextAuth.js tutorials

_These tutorials are contributed by the community and hosted on this site._

_New submissions and edits are welcome!_

### [NextJS Authentication Crash Course with NextAuth.js](https://youtu.be/o_wZIVmWteQ)

This tutorial dives in to the ins and outs of NextAuth including email, GitHub, Twitter and integrating with Auth0 in under hour.

### [Create your own NextAuth.js Login Pages](https://youtu.be/kB6YNYZ63fw)

This tutorial shows you how to jump in and create your own custom login pages versus using the ones provided by NextAuth.js

### [Refresh Token Rotation](tutorials/refresh-token-rotation)

How to implement refresh token rotation.

### [Securing pages and API routes](tutorials/securing-pages-and-api-routes)

How to restrict access to pages and API routes.

### [Custom models with TypeORM](tutorials/typeorm-custom-models)

How to use models with custom properties using the TypeORM adapter.

### [Creating a database adapter](tutorials/creating-a-database-adapter)

How to create a custom adapter, to use any database to fetch and store user / account data.

### [LDAP Authentication](tutorials/ldap-auth-example)

How to use the Credentials Provider to authenticate against an LDAP database.

This approach can be used to authenticate existing user accounts against any backend.

### [Testing with Cypress](tutorials/testing-with-cypress)

How to write tests using Cypress.

### [Usage with class components](tutorials/usage-with-class-components)

How to use `useSession()` hook with class components.

## Other tutorials and explainers

_These are tutorials and explainers that have been submitted or that we have found on the web and are hosted elsewhere They include articles, videos and example projects. Submissions for inclusion are welcome!_

### [Adding social authentication support to a Next.js app](https://getstarted.sh/bulletproof-next/add-social-authentication)

A tutorial by Arunoda Susirpiala. Checkout [GetStarted](https://getstarted.sh/) for more examples.

### [Add auth support to a Next.js app with a custom backend](https://arunoda.me/blog/add-auth-support-to-a-next-js-app-with-a-custom-backend)

A tutorial by Arunoda Susirpiala.

### [How to Configure Azure AD B2C Authentication with Next.js](https://benjaminwfox.com/blog/tech/how-to-configure-azure-b2c-with-nextjs)

Configuring authentication with Azure B2C in Next.js is not a particularly straight forward process. We'll look at how to facilitate this using the NextAuth.js library. By Ben Fox.

### [Authentication patterns for Next.js](https://leerob.io/blog/nextjs-authentication)

Next.js supports multiple patterns for authentication, each designed for different use cases. This guide will allow you to choose your adventure based on your constraints. By Lee Robinson.

### [Passwordless Authentication with next-auth](https://www.youtube.com/watch?v=GPBD3acOx_M)

A video tutorial by Xiaoru Li from Prisma.

### [Passwordless Authentication with Next.js, Prisma, and next-auth](https://dev.to/prisma/passwordless-authentication-with-next-js-prisma-and-next-auth-5g8g)

In this post, you'll learn how to add passwordless authentication to your Next.js app using Prisma and next-auth. By the end of this tutorial, your users will be able to log in to your app with either their GitHub account or a Slack-styled magic link sent right to their Email inbox. By Xiaoru Li.

### [Fullstack Authentication Example with Next.js and NextAuth.js](https://github.com/prisma/prisma-examples/tree/latest/typescript/rest-nextjs-api-routes-auth)

This example shows how to implement a fullstack app in TypeScript with Next.js using React (frontend), Next.js API routes and Prisma Client (backend). It also demonstrates how to implement authentication using NextAuth.js. By Nikolas Burk at Prisma.

### [Adding Authentication to an existing Next.js Application in no time!](https://dev.to/ndom91/adding-authentication-to-an-existing-serverless-next-js-app-in-no-time-with-nextauth-js-192h)

This `dev.to` tutorial walks one through adding NextAuth.js to an existing project. Including setting up the OAuth client id and secret, adding the API routes for authentication, protecting pages and API routes behind that authentication, etc.

### [Introduction to NextAuth.js](https://www.youtube.com/watch?v=npZsJxWntJM)

This is an introductory video to NextAuth.js for beginners. In this video, it is explained how to set up authentication in a few easy steps and add different configurations to make it more robust and secure.

### [Adding Sign in With Apple Next JS](https://thesiddd.com/blog/apple-auth)

This tutorial walks step by step on how to get Sign In with Apple working (both locally and on a deployed website) using NextAuth.js.

### [How to Authenticate Next.js Apps with Twitter & NextAuth.js](https://spacejelly.dev/posts/how-to-authenticate-next-js-apps-with-twitter-nextauth-js/)

Learn how to add Twitter authentication and login to a Next.js app both clientside and serverside with NextAuth.js.
