https://github.com/ory/next-auth-example
https://github.com/ory/next-auth-example
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ory/next-auth-example
- Owner: ory
- License: isc
- Created: 2023-12-20T13:17:16.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-04T12:14:24.000Z (11 months ago)
- Last Synced: 2024-10-29T17:25:16.180Z (7 months ago)
- Language: TypeScript
- Size: 954 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
> The example repository is maintained from a
> [monorepo](https://github.com/nextauthjs/next-auth/tree/main/apps/examples/nextjs).
> Pull Requests should be opened against
> [`nextauthjs/next-auth`](https://github.com/nextauthjs/next-auth).NextAuth.js Example App
Open Source. Full Stack. Own Your Data.
## Overview
NextAuth.js is a complete open source authentication solution.
This is an example application that shows how `next-auth` is applied to a basic
Next.js app.The deployed version can be found at
[`next-auth-example.vercel.app`](https://next-auth-example.vercel.app)### About NextAuth.js
NextAuth.js is an easy to implement, full-stack (client/server) open source
authentication library originally designed for [Next.js](https://nextjs.org) and
[Serverless](https://vercel.com). Our goal is to
[support even more frameworks](https://github.com/nextauthjs/next-auth/issues/2294)
in the future.Go to [next-auth.js.org](https://authjs.dev) for more information and
documentation.> _NextAuth.js is not officially associated with Vercel or Next.js._
## Getting Started
### 1. Clone the repository and install dependencies
```
git clone https://github.com/nextauthjs/next-auth-example.git
cd next-auth-example
npm install
```### 2. Configure your local environment
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).#### Database
A database is needed to persist user accounts and to support email sign in.
However, you can still use NextAuth.js for authentication without a database by
using OAuth for authentication. If you do not specify a database,
[JSON Web Tokens](https://jwt.io/introduction) 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:- Docs:
[authjs.dev/reference/core/adapters](https://authjs.dev/reference/core/adapters)### 3. Configure Authentication Providers
1. Review and update options in `auth.ts` as needed.
2. 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
https://authjs.dev/getting-started/providers/oauth-tutorial1. You can also choose to specify an SMTP server for passwordless sign in via
email.### 4. Start the application
To run your site locally, use:
```
npm run dev
```To run it in production mode, use:
```
npm run build
npm run start
```### 5. Preparing for Production
Follow the
[Deployment documentation](https://authjs.dev/getting-started/deployment)## Acknowledgements
Thanks to Vercel sponsoring this project by allowing it to be deployed for free for the entire NextAuth.js Team
## License
ISC