Skip to content
Home » Basic Authentication System – Problem 07

Basic Authentication System – Problem 07

Build a NodeJS web application with Javascript front-end to enable basic authentication workflow

  1. Register
  2. Login
  3. Forgot password ,
  4. Reset password.
  5. You can to use Laravel / Flask / Django / Expressjs as the backend Framework.
  6. You can create a github/gitlab account and add all your relevant source code + Migrations (if any) + Schema to the github account and give us the public repository path to validate and assess the solution.

Backend Requirements

The html pages would be communicating to the backend using Ajax and REST API’s . And you will be providing API’s to do:
Registration (Name, Email, Password, Confirm password)
Login (Email & Password and provide links for register and forgot password)
Forgot password – send an email with a unique identifier link to reset the password
Reset Password – validate the unique identifier and create new password

Database Design

For handling the use cases you will have to design corresponding tables in PostgreSQL.


All of the frontend form [ Registration form / Login form / Forgot password form ] all these have to be react js components. Get the information of how to make reactjs components from here (

Provide a page with options for the user to register, login, forgot password & Reset password

Registration form

With following fields
password confirmation

Do all validations that are required for the system. Have the registration work making use of AJAX API’s . Server side validation also should be provided for already existing email address.

Login Form

The email and password based login should be happening using AJAX interfaces and messages should be shown based on successful completion Or failure

Forgot password form

Show a success / failure message based on – email is of a registered user / valid email /
success message in terms of mail was sent successfully.

Reset password Form

confirm password
Click on the link on the email and user should be able to change the password


You can create a free amazon machine instance after signing up at and host your application on the public DNS that available and host the application on the machine. If you are not able to do the deployment on amazon, make use of Code anywhere ( to do the deployment.