The example repository is maintained from a monorepo. Pull Requests should be opened against
nextauthjs/next-auth
.
Open Source. Full Stack. Own Your Data.
Auth.js is a complete open-source authentication solution.
This is an example application that shows how @auth/core
is applied to a basic Gatsby app. We are showing how to configure the backend both as a Vercel Function for deployment to Vercel, and also for Gatsby Functions for other platforms.
The deployed version can be found at next-auth-gatsby-example.vercel.app
Auth.js is an easy-to-implement, full-stack (client/server) open-source authentication library originally designed for Next.js and Serverless, but this example shows how to use it in a Gatsby project. Our goal is to support even more frameworks in the future.
Go to authjs.dev for more information and documentation.
Auth.js is not officially associated with Vercel or Next.js._
git clone https://github.com/nextauthjs/next-auth-gatsby-example.git
cd next-auth-gatsby-example
npm install
Copy the .env.local.example file in this directory to .env.local (which will be ignored by Git):
cp .env.local.example .env.local
Add details for one or more providers (e.g. Google, Twitter, GitHub, Email, etc).
A database is needed to persist user accounts and to support email sign in. However, you can still use Auth.js for authentication without a database by using OAuth for authentication. If you do not specify a database, JSON Web Tokens will be enabled by default.
You can skip configuring a database and come back to it later if you want.
For more information about setting up a database, please check out the following links:
-
Review and update options in
nextauth.config.js
as needed. -
When setting up OAuth, in the developer admin page for each of your OAuth services, you should configure the callback URL to use a callback path of
{server}/api/auth/callback/{provider}
.
e.g. For Google OAuth you would use: http://localhost:3000/api/auth/callback/google
A list of configured providers and their callback URLs is available from the endpoint /api/auth/providers
. You can find more information at authjs.dev/reference/core/providers.
- You can also choose to specify an SMTP server for passwordless sign in via email.
To run your site locally, use:
npm run dev
To run it in production mode, use:
npm run build
npm run start
Follow the Deployment documentation
Thanks to Vercel sponsoring this project by allowing it to be deployed for free for the entire Auth.js Team
ISC