# NextAuth Example ## About NextAuth Example This is an example of how to use the [NextAuth](https://www.npmjs.com/package/next-auth) module. ## Getting Started This project as is run the same way as any Next.js project. To run it locally, just use: npm run dev To run it it production mode, use: npm build npm start ## Using NextAuth NextAuth is included in this project here: * index.js ## Pages This example includes the following pages: * pages/index.js * pages/auth/index.js * pages/auth/error.js * pages/auth/check-email.js * pages/auth/callback.js The file `pages/auth/credentials.js` provides an additional example of how to use a custom authentication handler defined in `next-auth.functions.js`. ## Configuration It also includes the following configuration files: * next-auth.config.js * next-auth.functions.js * next-auth.providers.js An example **.env** file is provided in **.env.example** which you can copy over to use for simple configuration: ```` SERVER_URL=http://localhost:3000 MONGO_URI=mongodb://localhost:27017/my-database FACEBOOK_ID= FACEBOOK_SECRET= GOOGLE_ID= GOOGLE_SECRET= TWITTER_KEY= TWITTER_SECRET= EMAIL_FROM=username@gmail.com EMAIL_SERVER=smtp.gmail.com EMAIL_PORT=465 EMAIL_USERNAME=username@gmail.com EMAIL_PASSWORD= ```` If you don't specify a MONGO_URI it will use an in-memory data store for user and session data. If you don't specify oAuth or SMTP email details you will not be able to log in. For a more complete example with live demo see [nextjs-starter.now.sh](https://nextjs-starter.now.sh/examples/authentication).