An open API service indexing awesome lists of open source software.

https://github.com/bagusvalentinoo/nextjs-auth-email-verification-app

Comprehensive auth system for secure, user-friendly account management, including email/password login, 2FA, email verification, OTP, password reset, and advanced security
https://github.com/bagusvalentinoo/nextjs-auth-email-verification-app

2-factor-authentication authorization better-auth email-verification next-authentication nextjs nextjs-bun nextjs-typescript nextjs15 otp-verification password-reset-link postgresql prisma-orm shadcn-ui

Last synced: about 2 months ago
JSON representation

Comprehensive auth system for secure, user-friendly account management, including email/password login, 2FA, email verification, OTP, password reset, and advanced security

Awesome Lists containing this project

README

          

# Next Auth Email Verification App - Comprehensive Authentication and Authorization Management

## 📝 Description

**Next Auth Email Verification App** is a comprehensive authentication and authorization management system that provides a secure and user-friendly experience for managing user accounts, permissions, and access control. It includes features such as email and password authentication, 2-factor authentication, email verification, one-time password (OTP) generation, password reset functionality, and advanced security measures.

---

## 🌐 Demo

You can see the demo of the app [Next Auth Email Verification App](https://next-auth-email-verification-app.vercel.app/).

---

## ✨ Key Features

- **Authentication:**
- Email and Password Authentication
- 2-Factor Authentication
- Email Verification
- One-Time Password (OTP) Generation
- Password Reset
- Advanced Security Measures
- **Authorization:**
- Protected Routes
- Guest Routes

---

## 🛠️ Technologies Used

- **Framework:** Next.js v15
- **Package Manager:** Bun
- **Programming Language:** TypeScript
- **Database:** PostgreSQL
- **Authentication:** Better Auth
- **ORM:** Prisma
- **UI:** Shadcn UI
- **Styling:** Tailwind CSS
- **Linting:** ESLint
- **Formatting:** Prettier
- **Deployment:** Vercel

---

## 🔧 Installation

### Local Installation

1. **Clone the repository:**

```bash
git clone https://github.com/bagusvalentinoo/next-auth-email-verification-app.git
cd next-auth-email-verification-app
```

2. **Configure environment variables:**

- Copy the example `.env` file and update the values as needed:
```bash
cp .env.example .env
```

3. **Install dependencies using Bun:**

```bash
bun install
```

4. **Generate Prisma Client:**

```bash
bunx prisma generate
```

5. **Push database schema:**

```bash
bun run db:migrate
```

6. **Start the development server:**

```bash
bun run dev
```

7. **Access the application:**
Open your browser and navigate to `http://localhost:3000`.

---

### Installation via Docker

---

## 📊 Migration & Database Seeding

- **Apply database schema:**

```bash
bun run db:migrate
```

- **Rollback database schema:**

```bash
bun run db:migrate:rollback
```

- **Fresh database:**

```bash
bun run db:migrate:fresh
```

---

## 📜 License

This project is licensed under the [MIT License](./LICENSE).

---

## 📞 Support

If you encounter any issues or have questions, feel free to open an issue or contact the maintainers.

---

## 📚 Resources

- Next.js Documentation
- Bun Documentation
- Prisma Documentation
- Better Auth Documentation
- Shadcn UI Documentation
- Tailwind CSS Documentation
- ESLint Documentation
- Prettier Documentation