Skip to content

tejassoni/laravel-breeze-web-guard-user-email-otp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Overview

Laravel multiple Admin and User roles authentication using Laravel Breeze Where User and Admin roles on registeration sent OTP to their email address. Resend OTP functionality implement after timer expired.

Server Requirements

Setup Basic Commands

  1. git clone repository_url
  2. cd laravel-breeze-web-guard-user-email-otp
  3. composer update
  4. create database and configure .env database connection
  5. php artisan migrate
  6. php artisan db:seed
  7. php artisan serve

Routes Lists

  1. Auth Routes

Credentials Details

User Role

Admin Role

Project Requirement

  1. Authentication Using Laravel Web Gaurd :
  2. Admin Role Requirement
    • Admin Registration Fields
    • Name : [ Validation Rules : Accept only strings and space, Required ]
    • Email : [ Validation Rules : Accept only valid email address, Required ]
    • Password : [ Validation Rules : Accept only valid password min 8 length with alphanumeric, Required ]
    • Confirm Password : [ Validation Rules : should be same as Password field, Required ]
    • On Registration button click redirect to Admin dashboard page
    • Generate 5 dummy sample for Admin role using Factory and Seeder
    • Make Seprate dashboard view ,admin table and Admin model
    • Admin Login Fields
    • Email : [ Validation Rules : Accept only valid email address, Required ]
    • Password : [ Validation Rules : Accept only valid password min 8 length with alphanumeric, Required ]
    • On Login button click redirect to Admin dashboard page if credential is validated
  3. User Role Requirement
    • User Registration Fields
    • Name : [ Validation Rules : Accept only strings and space, Required ]
    • Email : [ Validation Rules : Accept only valid email address, Required ]
    • Password : [ Validation Rules : Accept only valid password minimum 8 length with alphanumeric, Required ]
    • Confirm Password : [ Validation Rules : should be same as Password field, Required ]
    • On Registration button click send email verification 8 digit OTP to registered email address
    • Verify OTP Page will be open with Enter OTP
    • 1 minutes timer counter will shows to user
    • After 1 minutes timer counter will shows Resend OTP button to user and should able to resend 8 digit OTP at registered email
    • After 1 minutes timer counter old OTP will be expired and not allow to login with old OTP
    • On Verify OTP Check if OTP is valid then redirect to User Home Page
    • Generate 5 dummy sample for User role using Factory and Seeder
    • Make Seprate dashboard view ,user table and User model
    • User Login Fields
    • Email : [ Validation Rules : Accept only valid email address, Required ]
    • Password : [ Validation Rules : Accept only valid password min 8 length with alphanumeric, Required ]
    • On Login button click redirect to User home page if credential is validated

Laravel / PHP Coding Standards

  1. Use Laravel's migration scripts for database schema and tables related to further all operations
  2. Use Laravel's factory and seeders for sample dummy data creations where required
  3. Use Laravel's validation using Request classes where required
  4. Use Laravel's Eloquent and Relationships in models where required
  5. Use camel case for function name and variable name. E.g getProductDetails() , $categoryDetails
  6. Comment on the above function with short details of that function use or purpose of function creation.
  7. Reuse the common codes using some helper class functions etc
  8. Remove unnecessary code and debug points that are not needed
  9. Avoid unnecessary loops if not required
  10. Avoid unnecessary variable creations
  11. Use PHP design patterns where required Design Patterns
  12. Normalize database tables where required Database Normalization
  13. Optimize database tables
  14. Avoid MySQL joins queries if not required
  15. Avoid MySQL sub queries if it does not require
  16. For more information, please read the document Code Standard

References :

a) https://www.youtube.com/watch?v=yXjHYTFRTC8

About

Laravel Breeze Multi-Auth using Web guard

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published