Skip to content

Latest commit

 

History

History
81 lines (48 loc) · 2.59 KB

README.md

File metadata and controls

81 lines (48 loc) · 2.59 KB

NextAuth MongoDB Typescript Example

A demo project using Next-Auth for authentication. It connects to MongoDB via Mongoose and supports Google OAuth and email/password logins.

Features

  • OAuth: Log in with Google.

  • Credential Login: Use email and password.

  • SignUp: Register with name, email, password.

  • Profile Edit: Change user details.

  • Password Change: Safely update passwords.

  • Secure Routes: Access only for logged-in users / admins.

This is a Next.js project bootstrapped with create-next-app.

Environment Setup

Create a .env file in the root directory and add the following variables:

NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="YOUR_NEXTAUTH_SECRET"

GOOGLE_CLIENT_ID="YOUR_GOOGLE_CLIENT_ID"
GOOGLE_CLIENT_SECRET="YOUR_GOOGLE_CLIENT_SECRET"

MONGODB_URI="YOUR_MONGODB_URI"

GOOGLE_CLIENT_ID & GOOGLE_CLIENT_SECRET

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.