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
- Host: GitHub
- URL: https://github.com/bagusvalentinoo/nextjs-auth-email-verification-app
- Owner: bagusvalentinoo
- License: mit
- Created: 2025-03-20T10:08:22.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-20T10:11:00.000Z (about 1 year ago)
- Last Synced: 2025-03-20T10:25:35.097Z (about 1 year ago)
- Topics: 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
- Language: TypeScript
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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