Skip to content

responsive style for signup#463

Merged
mehul-m-prajapati merged 3 commits into
GitMetricsLab:mainfrom
siyasaxena:fix/issue-117-register-ui
May 26, 2026
Merged

responsive style for signup#463
mehul-m-prajapati merged 3 commits into
GitMetricsLab:mainfrom
siyasaxena:fix/issue-117-register-ui

Conversation

@siyasaxena
Copy link
Copy Markdown
Contributor

@siyasaxena siyasaxena commented May 23, 2026

Related Issue


Description

Updated the layout, background styling, containers, and spacing of the Register/Signup page (Signup.tsx) to perfectly match the design aesthetic and clean layout of the existing Login page.


How Has This Been Tested?

Tested locally by running npm run dev and verifying the updated design layout of the Sign Up page directly on Chrome.


Screenshots (if applicable)

Screenshot 2026-05-23 220532

Type of Change

  • Bug fix
  • New feature
  • [ x] Code style update
  • Breaking change
  • Documentation update

Summary by CodeRabbit

  • New Features
    • Updated signup form to collect first and last names instead of username
    • Added client-side validation with inline error messages for required fields, email format, and password strength
    • Added password visibility toggle for enhanced user experience
    • Enhanced success screen with personalized confirmation message

Review Change Stack

@netlify
Copy link
Copy Markdown

netlify Bot commented May 23, 2026

Deploy Preview for github-spy ready!

Name Link
🔨 Latest commit 21437ac
🔍 Latest deploy log https://app.netlify.com/projects/github-spy/deploys/6a15e23218556d0008a148ce
😎 Deploy Preview https://deploy-preview-463--github-spy.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 23, 2026

Warning

Review limit reached

@mehul-m-prajapati, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 55 minutes and 48 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2d009556-6678-4eb3-9176-c9f47bd3f4e3

📥 Commits

Reviewing files that changed from the base of the PR and between 82df369 and 21437ac.

📒 Files selected for processing (1)
  • src/pages/Signup/Signup.tsx
📝 Walkthrough

Walkthrough

The signup page component was completely redesigned. Styling moved from utility/theme-based to a self-contained CSS string. Form fields changed from username/email/password to firstName/lastName/email/password. Backend API submission was replaced with simulated async flow and local success screen. Custom inline SVG icons replaced lucide-react. Client-side validation with inline error display was added.

Changes

Register page redesign

Layer / File(s) Summary
Styling and type contracts
src/pages/Signup/Signup.tsx
Self-contained CSS styles string covers layout, typography, form elements, buttons, and error/success states. FormState and FormErrors TypeScript types define the form data shape and field-level validation messages.
Custom SVG icon components
src/pages/Signup/Signup.tsx
Inline SVG icon components (user, mail, lock, eye/eye-close toggle, arrow, checkmark, social brands) replace lucide-react. IconEye prop type added to drive password visibility icon state.
Form component with validation and state management
src/pages/Signup/Signup.tsx
RegisterPage() component uses local state for firstName/lastName/email/password, applies field-level validation (required, email regex, minimum length), clears errors on input change, simulates async submit via timeout, and conditionally renders between form and success screen showing form.firstName. Password visibility toggle and /login link retained.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes


Possibly related PRs

  • GitMetricsLab/github_tracker#311: Both PRs modify src/pages/Signup/Signup.tsx's signup component markup—especially form card spacing and submit button styling—with the main PR's complete redesign overlapping prior UI responsiveness changes.
  • GitMetricsLab/github_tracker#265: Both PRs add/adjust client-side signup form validation and password show/hide toggle in src/pages/Signup/Signup.tsx, though the main PR also changes the form field model and removes backend submission entirely.

Suggested labels

gssoc25, level2, level:intermediate, quality:clean


Poem

🐰 A form redesigned with types so clear,
SVG icons now appear,
First and last names side by side,
Local validation is our guide,
Success screens greet with cheer!

🚥 Pre-merge checks | ✅ 2 | ❌ 3

❌ Failed checks (2 warnings, 1 inconclusive)

Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning The PR includes significant out-of-scope changes: the form structure was changed from username/email/password to firstName/lastName/email/password, client-side validation was added, and backend integration was removed—changes not mentioned in the issue or PR description. Clarify whether form field changes and validation logic are intentional requirements, or separate them into a follow-up PR focused solely on design/styling updates.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'responsive style for signup' is vague and overstates the scope. The actual changes include major functional refactoring (form field structure, validation logic, backend integration removal) beyond just responsive styling. Revise title to be more specific about the actual changes, such as 'Redesign signup page to match login layout' or 'Update signup page design and form structure'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description check ✅ Passed The description follows the template structure and includes all required sections: related issue, description, testing details, screenshots, and type of change. The content is clear and specific.
Linked Issues check ✅ Passed The PR addresses the linked issue #117 objective to improve the Register page design to match the Login page layout. The code changes demonstrate visual/layout improvements matching the design shown in the screenshot.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ 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 and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (2)
src/pages/Signup/Signup.tsx (2)

470-487: 💤 Low value

Unused icon components.

GoogleIcon and GitHubIcon are defined but never rendered. Remove them unless social login is planned for a follow-up PR.

🤖 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 `@src/pages/Signup/Signup.tsx` around lines 470 - 487, The file defines unused
React components GoogleIcon and GitHubIcon which should be removed to clean up
dead code; delete the GoogleIcon and GitHubIcon function declarations (and any
associated unused imports if present) or alternatively render them where
intended if social login is planned—locate the GoogleIcon and GitHubIcon symbols
in Signup.tsx and remove their whole function blocks (or wire them into the
social-login UI) so there are no unused component definitions remaining.

295-325: 💤 Low value

Unused CSS classes for social login buttons.

.rp-social and .rp-social-btn are defined but never applied in the JSX. Combined with the unused GoogleIcon and GitHubIcon components, and the "or continue with" divider that leads to nothing—either implement the social login buttons or remove the dead code and divider.

🤖 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 `@src/pages/Signup/Signup.tsx` around lines 295 - 325, The stylesheet defines
unused classes (.rp-social, .rp-social-btn) and the file imports/mentions
GoogleIcon and GitHubIcon and an "or continue with" divider that leads to no
buttons; you should either implement the social login UI or remove the dead
code: locate the Signup component (where GoogleIcon, GitHubIcon, and the divider
string are referenced) and either add a social button row using those icons with
className="rp-social" and className="rp-social-btn" and wire their click
handlers to the existing social auth functions, or delete the
.rp-social/.rp-social-btn CSS, remove the GoogleIcon and GitHubIcon
imports/usages and remove the divider text to eliminate unused assets.
🤖 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.

Inline comments:
In `@src/pages/Signup/Signup.tsx`:
- Around line 624-626: The divider "or continue with" currently suggests social
logins but no buttons are rendered; either remove the <div
className="rp-divider"> block or add the social login buttons using the existing
assets and styles: render two buttons with className "rp-social-btn" using the
GoogleIcon and GitHubIcon components, include accessible labels (e.g., "Continue
with Google", "Continue with GitHub"), and wire them to the appropriate handlers
(e.g., signInWithGoogle / signInWithGitHub or the Signup component's
corresponding methods); ensure the buttons sit directly below the divider so the
UI matches the copy and use the existing .rp-social-btn styles for consistent
layout.
- Line 7: The global reset using the universal selector (*) in Signup.tsx is
leaking styles app-wide; scope it by changing the selector to target only the
component root (e.g. change "* { box-sizing: border-box; margin: 0; padding: 0;
}" to ".rp-root * { box-sizing: border-box; margin: 0; padding: 0; }") and
ensure the RegisterPage / Signup root element has className="rp-root", or remove
the reset entirely and rely on the app-level baseline; update the CSS and the
Signup/RegisterPage component root accordingly.
- Line 528: The img tag in the Signup component uses a relative src ("crl.png")
which will break under client-side routing; update the <img> in Signup (the img
element in Signup.tsx) to use either an absolute path (e.g. "/crl.png" if the
file lives in public/) or import the asset at the top of the file (e.g. import
logoSrc from "…/assets/crl.png") and set src to that imported identifier so the
bundler resolves the asset reliably.

---

Nitpick comments:
In `@src/pages/Signup/Signup.tsx`:
- Around line 470-487: The file defines unused React components GoogleIcon and
GitHubIcon which should be removed to clean up dead code; delete the GoogleIcon
and GitHubIcon function declarations (and any associated unused imports if
present) or alternatively render them where intended if social login is
planned—locate the GoogleIcon and GitHubIcon symbols in Signup.tsx and remove
their whole function blocks (or wire them into the social-login UI) so there are
no unused component definitions remaining.
- Around line 295-325: The stylesheet defines unused classes (.rp-social,
.rp-social-btn) and the file imports/mentions GoogleIcon and GitHubIcon and an
"or continue with" divider that leads to no buttons; you should either implement
the social login UI or remove the dead code: locate the Signup component (where
GoogleIcon, GitHubIcon, and the divider string are referenced) and either add a
social button row using those icons with className="rp-social" and
className="rp-social-btn" and wire their click handlers to the existing social
auth functions, or delete the .rp-social/.rp-social-btn CSS, remove the
GoogleIcon and GitHubIcon imports/usages and remove the divider text to
eliminate unused assets.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 699e6120-89b6-4ac7-a783-83c177bc0e3b

📥 Commits

Reviewing files that changed from the base of the PR and between 373dde2 and 82df369.

📒 Files selected for processing (1)
  • src/pages/Signup/Signup.tsx

Comment thread src/pages/Signup/Signup.tsx Outdated
<div className="rp-hero-orb" />
<div className="rp-brand">
<div className="rp-brand-icon">
<img src="crl.png" alt="logo" width={20} height={20} />
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Relative image path may break under client-side routing.

src="crl.png" resolves relative to the current URL. On /signup, the browser requests /signup/crl.png, which will 404 unless explicitly handled. Use an absolute path (/crl.png if the file is in public/) or import the asset so the bundler resolves it.

Option 1: Absolute path (if in public/)
-                <img src="crl.png" alt="logo" width={20} height={20} />
+                <img src="/crl.png" alt="logo" width={20} height={20} />
Option 2: Import the asset
import logoSrc from "`@/assets/crl.png`"; // adjust path as needed
// ...
<img src={logoSrc} alt="logo" width={20} height={20} />
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<img src="crl.png" alt="logo" width={20} height={20} />
<img src="/crl.png" alt="logo" width={20} height={20} />
🤖 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 `@src/pages/Signup/Signup.tsx` at line 528, The img tag in the Signup component
uses a relative src ("crl.png") which will break under client-side routing;
update the <img> in Signup (the img element in Signup.tsx) to use either an
absolute path (e.g. "/crl.png" if the file lives in public/) or import the asset
at the top of the file (e.g. import logoSrc from "…/assets/crl.png") and set src
to that imported identifier so the bundler resolves the asset reliably.

Comment on lines +624 to +626
<div className="rp-divider">
<hr /><span>or continue with</span><hr />
</div>
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

"or continue with" divider leads nowhere.

The divider text implies social login options below it, but no buttons are rendered. This creates confusing UX. Either render the social login buttons (using the already-defined GoogleIcon/GitHubIcon and .rp-social-btn styles) or remove the divider until the feature is ready.

🤖 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 `@src/pages/Signup/Signup.tsx` around lines 624 - 626, The divider "or continue
with" currently suggests social logins but no buttons are rendered; either
remove the <div className="rp-divider"> block or add the social login buttons
using the existing assets and styles: render two buttons with className
"rp-social-btn" using the GoogleIcon and GitHubIcon components, include
accessible labels (e.g., "Continue with Google", "Continue with GitHub"), and
wire them to the appropriate handlers (e.g., signInWithGoogle / signInWithGitHub
or the Signup component's corresponding methods); ensure the buttons sit
directly below the divider so the UI matches the copy and use the existing
.rp-social-btn styles for consistent layout.

@mehul-m-prajapati mehul-m-prajapati merged commit 7192e38 into GitMetricsLab:main May 26, 2026
4 of 6 checks passed
@github-actions
Copy link
Copy Markdown

🎉🎉 Thank you for your contribution! Your PR #463 has been merged! 🎉🎉

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🚀 Feature: Improve design of Register page

2 participants