Skip to content

feat: implement web auth flow UI and interactions#99

Merged
kckagancan merged 4 commits into
developmentfrom
feature/web-auth-flow
Mar 23, 2026
Merged

feat: implement web auth flow UI and interactions#99
kckagancan merged 4 commits into
developmentfrom
feature/web-auth-flow

Conversation

@erinc00

@erinc00 erinc00 commented Mar 21, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR implements the web auth flow for NEPH.

Included

  • auth layout and welcome screen
  • login page
  • signup page
  • verify email page
  • forgot password page
  • terms of service and privacy policy pages
  • guest mode placeholder
  • social auth placeholders
  • continue with email flow
  • email, phone number, and verification code validation improvements
  • signup draft restore flow when returning from verify email
  • responsive auth layout and showcase improvements

Notes

  • Guest mode is currently a placeholder for MVP.
  • Social login buttons are UI placeholders and are not connected to real OAuth providers yet.
  • A related shared UI fix PR exists and is expected to be merged first if needed.

@erinc00 erinc00 added enhancement New feature or request frontend web labels Mar 21, 2026

@gulcetahtasiz gulcetahtasiz 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.

Great work overall, the auth flow structure and UI look clean and well thought out

I have a couple of points:

  1. Merge conflict (blocking)
    There is an unresolved merge conflict in globals.css that needs to be fixed before this PR can be merged.
    It looks like both branches modified the same button styles. Please make sure to keep the base button reset styles from development (instead of the commented version) to maintain UI consistency.

  2. UX improvement (non-blocking)
    Nice work on the signup flow, especially the draft restore after email verification.
    I noticed a UX issue: when filling the signup form and navigating to Terms of Service or Privacy Policy, returning back resets all form inputs. This can lead to loss of user input and may be frustrating.

Thanks for the effort

@kckagancan kckagancan 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.

  • Component and filename mismatch at AuthShowCase.tsx (func name AuthShowcase)

At SignupForm.tsx:

  • sessionStorage holds password which is an issue
  • There is no cleanup for setTimeout
  • Password is logged which is an issue

At SelectInput.tsx:

  • label and shortLabel are made mandatory which is not a good idea I think.
  • key generation is little too complex
  • className goes to invisible select

@erinc00

erinc00 commented Mar 21, 2026

Copy link
Copy Markdown
Contributor Author

Great work overall, the auth flow structure and UI look clean and well thought out

I have a couple of points:

  1. Merge conflict (blocking)
    There is an unresolved merge conflict in globals.css that needs to be fixed before this PR can be merged.
    It looks like both branches modified the same button styles. Please make sure to keep the base button reset styles from development (instead of the commented version) to maintain UI consistency.
  2. UX improvement (non-blocking)
    Nice work on the signup flow, especially the draft restore after email verification.
    I noticed a UX issue: when filling the signup form and navigating to Terms of Service or Privacy Policy, returning back resets all form inputs. This can lead to loss of user input and may be frustrating.

Thanks for the effort

resolved the restore issue for Terms of Service / Privacy Policy navigation
synced naming / component fixes and updated auth flow behavior

@erinc00

erinc00 commented Mar 21, 2026

Copy link
Copy Markdown
Contributor Author
  • Component and filename mismatch at AuthShowCase.tsx (func name AuthShowcase)

At SignupForm.tsx:

  • sessionStorage holds password which is an issue
  • There is no cleanup for setTimeout
  • Password is logged which is an issue

At SelectInput.tsx:

  • label and shortLabel are made mandatory which is not a good idea I think.
  • key generation is little too complex
  • className goes to invisible select

fixed AuthShowcase filename mismatch
removed auth payload logging
removed password from signup draft storage
added timeout cleanup
revised SelectInput API and behavior

@erinc00

erinc00 commented Mar 21, 2026

Copy link
Copy Markdown
Contributor Author

Addressed the review comments and synced the branch with the latest development.

Updates include:

  • resolved merge conflicts
  • fixed signup draft restore for Terms of Service / Privacy Policy navigation
  • removed password from session storage
  • removed auth payload logging
  • added timeout cleanup
  • fixed AuthShowcase filename mismatch
  • revised SelectInput, Checkbox, and VerificationCodeInput while preserving the latest shared color updates

@gulcetahtasiz gulcetahtasiz 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.

Tested the flow, everything is working smoothly. Great job, ready to merge

@kckagancan kckagancan 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.

Looks good now. Merging.

@kckagancan
kckagancan merged commit 7e75b63 into development Mar 23, 2026
@kckagancan
kckagancan deleted the feature/web-auth-flow branch March 23, 2026 06:34
@erinc00 erinc00 removed the enhancement New feature or request label Mar 25, 2026
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.

3 participants