Authentication
About A complete MERN Authentication system with Email Verification and Password Reset using secure 6-digit OTPs sent to users' email. The backend, built with Node.js, Express, MongoDB, and JWT. The frontend, using React and Tailwind CSS, includes Login, Registration, and Password Reset forms connected to the backend for full functionality.
MERN Stack Authentication System
A complete authentication system built using the MERN (MongoDB, Express.js, React.js, Node.js) stack. The project includes Email Verification, Password Reset, and a secure 6-digit OTP feature.
🌟 Features
- User Registration and Login
- Email Verification with OTP
- Password Reset functionality using OTP
- Secure authentication using JWT (JsonWebToken)
- User-friendly UI with Tailwind CSS
🛠️ Tech Stack
Backend
- Node.js
- Express.js
- MongoDB with Mongoose ORM
- Libraries:
bcryptjs
cookie-parser
cors
dotenv
jsonwebtoken
nodemailer
Frontend
- React.js
- Tailwind CSS
- Libraries:
axios
react-router-dom
react-toastify
🚀 Project Overview
This project implements a fully functional MERN Stack Authentication System:
Backend:
- API endpoints for user authentication (Registration, Login, Password Reset, etc.)
- OTP generation and email dispatch using nodemailer.
- Secure password hashing with bcryptjs.
Frontend:
- Responsive UI using Tailwind CSS.
- Forms for Login, Registration, and Password Reset.
- OTP input fields for email verification and password reset.
- Integration with backend APIs using Axios.
📥 Installation and Setup
Clone the repository
git clone https://github.com/pradyumn8/Authentication.git
Navigate into the project directory
cd server
Install dependencies
npm install
Run the Project
npm run server
Navigate into the project directory
cd client
Install dependencies
npm install
Run the Project
npm run dev
Contributing
Feel free to fork the repository and submit pull requests. For major changes, please open an issue first to discuss what you would like to change.