Skip to content

[Feature]: Account Recovery & Email Login #342

@Nareshkumar5232

Description

@Nareshkumar5232

Related Page / Route

RWB Dashboard (/rwb)

Feature Description

Currently, users can log in only using their username and password. I propose adding:

1.Login using email or username – Users should be able to enter either their registered email or username to log in.
2.Forgot Password feature – Users who forget their password can reset it via a secure email link.

Problem it Solves

1.Users who forget their username or password cannot log in easily.
2.Currently, account recovery is not possible without support.

Suggested Implementation

  • Update login input to allow username or email.
  • Add a “Forgot Password?” link on the login page.
  • When users enter their registered email:
  • Generate a secure reset token.
  • Send a password reset link to their email.
  • Token expires after a set time (e.g., 1 hour).
  • Reset password page allows users to set a new password, which is hashed securely before saving.

Tech Stack Considerations:

  1. Frontend: React (login page, forgot password page, reset password page)
  2. Backend: Node.js / Express (API endpoints for password reset)
  3. Database: Store tokens securely with expiry time.

Security: Use bcrypt for password hashing, secure token generationUpdate login input to allow username or email.

Add a “Forgot Password?” link on the login page.

When users enter their registered email:

  1. Generate a secure reset token.
  2. Send a password reset link to their email.
  3. Token expires after a set time (e.g., 1 hour).
  4. Reset password page allows users to set a new password, which is hashed securely before saving.

Tech Stack Considerations:

1.Frontend: React (login page, forgot password page, reset password page)

2.Backend: Node.js / Express (API endpoints for password reset)

3.Database: Store tokens securely with expiry time

4.Security: Use bcrypt for password hashing, secure token generation

Mockups / Screenshots

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions