Go back to homepage

Security

Identity's cover image

OVERVIEW

Identity is a robust web application built on Next.js 14 with server actions, offering a seamless user authentication experience with a plethora of features.

FEATURES

  • Next-auth v5 (Auth.js)
  • Next.js 14 with server actions
  • OAuth Provider (Social login with Google & GitHub)
  • Forgot password functionality
  • Email verification
  • Two factor verification
  • User roles (Admin & User)
  • Change email with new verification in Settings page
  • Change password with old password confirmation in Settings page
  • Enable/disable two-factor auth in Settings page

PROBLEM

The email verification functionality currently requires your own Resend API key and setup instructions are provided due to domain verification requirements on Resend / Handling Multiple Routes, Generating token based authentication storing and retrieving and deleting them using server actions in a mixed setup of server and client components mangaing scalable file folder structure with private and default routes etc...

SOLUTION

I implemented multiple routes in a mixed server-client setup, employing token-based authentication for security. Utilizing server actions, tokens were generated, stored, retrieved, and deleted. A scalable file folder structure managed private and default routes.

TECH STACK

Fullstack:

  • NextJS 14
  • React JS
  • Prisma ORM/PostGres SQL
  • Acternity UI
  • Server Actions
  • ZOD

SCREENSHOT

Identity's 1 screenshotIdentity's 2 screenshotIdentity's 3 screenshot