/user-auth

User authentication using JWT.

Primary LanguageEJS

Authentication Model

A simple User Authentication Model using JWT. User interface that allows users to sign up and login into their accounts with basic role. Accounts with admin access have the power to edit or delete a user. This is done by allowing the admin special page which has list of all the users and options to update or delete. The user data is encrypted through Bcrypt and saved in the database. The passwords are hashed and thus this makes this authentication model safe and secure.

The site is live at : https://user-auth-system-by-rahul.herokuapp.com/

User Auth

Tech Stack

Bcrypt is a library to help you hash passwords.

Mongoose is a JavaScript object-oriented programming library that creates a connection between MongoDB and the Express web application framework.

Optimizations

While improving this project, I would start by implementing the following features -

  1. Implementing the forgot password feature
  2. Adding support for login with Google, Github accounts
  3. Allowing users to login with email services

Lessons Learned

I learned how to create a user authentication model using JWT. My learning was focused on creating a user interface that makes allows users to sign up and login to the system using password. This is done by allowing the users to sign up and login into their accounts with basic role. Accounts with admin access have the power to edit or delete a user. I learned how to hash passwords and store them into database securely. I learned about different cryptographic implementation techniques.