Skip to content

feat: add password strength indicator to signup form - #672

Open
geethika-sandireddy wants to merge 1 commit into
Kuldeeep18:mainfrom
geethika-sandireddy:main
Open

feat: add password strength indicator to signup form#672
geethika-sandireddy wants to merge 1 commit into
Kuldeeep18:mainfrom
geethika-sandireddy:main

Conversation

@geethika-sandireddy

@geethika-sandireddy geethika-sandireddy commented Jul 12, 2026

Copy link
Copy Markdown

Added a dynamic password strength indicator with weak, medium, and strong states based on password complexity.

Pull Request

🔗 Related Issue

Closes #393


📝 Summary of Changes

  • Added a visual password strength indicator below the password field.
  • Implemented real-time password strength evaluation using JavaScript.
  • Displayed Weak, Medium, and Strong states based on password length, uppercase letters, numbers, and special characters.

🏷️ Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • ♻️ Refactor
  • 📝 Documentation update
  • 🎨 UI / Style change
  • 🔧 Chore

🧪 Testing

Steps to test:

  1. Open the registration page.
  2. Type different passwords in the password field.
  3. Verify the strength bar and label update dynamically.

📸 Screenshots (if applicable)


✅ Checklist

  • No merge conflicts
  • Changes follow the project guidelines
  • Documentation updated (if applicable)
  • Related issue linked
  • Changes tested locally (if applicable)

Summary by CodeRabbit

  • New Features
    • Added a password strength indicator to the registration page.
    • The indicator evaluates password length and character variety, displaying Weak, Medium, or Strong with visual color and progress updates as users type.

Added a dynamic password strength indicator with weak, medium, and strong states based on password complexity.
@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The registration page adds a password strength meter with styled markup and client-side scoring. As the password changes, the bar width, color, and label update for empty, weak, medium, and strong states.

Changes

Password strength indicator

Layer / File(s) Summary
Password strength meter UI and scoring
frontend/register.html
Adds strength meter styling and markup, then evaluates password length, uppercase letters, digits, and special characters to update the bar and strength label during input.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: adding a password strength indicator to the signup form.
Linked Issues check ✅ Passed The PR implements the requested live strength bar, checks length/uppercase/numbers/special characters, and updates color and text states.
Out of Scope Changes check ✅ Passed The changes are confined to the requested register.html password-strength UI and logic, with no obvious unrelated additions.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Warning

⚠️ This pull request shows signs of AI-generated slop (ai_padded_prose). It has been flagged by CodeRabbit slop detection and should be reviewed carefully.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
frontend/register.html (1)

196-231: 🎯 Functional Correctness | 🔵 Trivial | 💤 Low value

Scoring logic is correct and meets requirements.

The implementation correctly evaluates length, uppercase, digits, and special characters, and updates the bar width, color, and label for each level. Using textContent avoids XSS risk.

One optional consideration: the length check is binary (≥8 or not), so a 7-character password with uppercase, digit, and special scores 3 (Medium) while a 20-character lowercase-only password scores 1 (Weak). Adding a graduated length bonus (e.g., +1 for ≥12 or ≥16 characters) would make the meter more encouraging for longer passwords, but this is a design enhancement, not a defect.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/register.html` around lines 196 - 231, No changes are required: the
password scoring and display logic in the passwordInput input handler meets the
stated requirements. Treat graduated length scoring as optional and do not
modify the implementation unless explicitly requested.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@frontend/register.html`:
- Around line 196-231: No changes are required: the password scoring and display
logic in the passwordInput input handler meets the stated requirements. Treat
graduated length scoring as optional and do not modify the implementation unless
explicitly requested.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: dc547e81-3a3a-4348-8727-ad07e1601029

📥 Commits

Reviewing files that changed from the base of the PR and between 4a33158 and 187c98a.

📒 Files selected for processing (1)
  • frontend/register.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

LO-056 [Easy]: Password Strength Estimator in Signup Form

1 participant