This repo contains guidenss for an exercise of creating a users management platform including email validation, registration and login pages, and a users database.
Build a user management platform including the following features:
- Users database
- Login of existing user
- Registration of new user
- Email validation system
- Two-factor authentication [Optional]
- Pages: Login page, registration page and profile page.
- Admin page
- Create node.js service and deploy to ec2 Heroku.
- Use postgresSQL as database framework.
- A gitlab repository of your code.
- A service deployed in Heroku.
- Link to 'Login page'.
The database should contain 2 tables, users_table and users_credentials
Contains all the relevant data per user.
- user_id : unique user id
- email : validate
- full_name : validate
- created_at : Date and time. Date format should be the same as 'day_of_birth' format.
Conatins the mapping between user_id to the user's password. As for encryption, it's up to you to decide.
The page UI design files are in 'sketch' folder.
Login using the email and password.
On sucess directs you to the 'Profile page' (just create a simple page with some welcoming message).
On failure let you know and stays on the same page.
Regsiter button : On press adds the users data and credntials to the database.
Of course all fields must be validate - its' up to you to decide how.
If the users data is valid, goto 'Login page'.
This page is for the system admin. It should support 'view all users' and 'remove user' features.
You should manage an email validation process - meaning that until email validation the user won't be able to login.