Skip to content

style: implement responsive css grid auth UI and fix legacy hasher syntax error#48

Open
Adii-45 wants to merge 12 commits into
Payal-Dhokane:mainfrom
Adii-45:feature/auth-grid-and-hasher-patch
Open

style: implement responsive css grid auth UI and fix legacy hasher syntax error#48
Adii-45 wants to merge 12 commits into
Payal-Dhokane:mainfrom
Adii-45:feature/auth-grid-and-hasher-patch

Conversation

@Adii-45
Copy link
Copy Markdown
Contributor

@Adii-45 Adii-45 commented May 20, 2026

📋 Overview

This Pull Request delivers a comprehensive, high-fidelity presentation and architectural refactor for the application authentication gateway. It successfully resolves two interconnected critical bottlenecks:

  1. Authentication Layout Stretching ([BUG] [CRITICAL] Authentication Presentation Layer Overhaul: Refactoring Loose Sequential Inputs into Compact Responsive Grid Layout #37): Replaces the default sequential linear field stacking from streamlit-authenticator with a responsive CSS grid layout framework.
  2. Hasher Runtime Exception: Mitigates a critical runtime crash (AttributeError: type object 'Hasher' has no attribute 'hash') caused by a legacy configuration block interacting with updated package versions.

The implementation is verified, stable, and completely sandboxed away from the core analytics engine workflows.

📁 Detailed File Audit & Breakdown

  1. src/auth.py (Presentation Layer & Dependency Refactor)
  • Changes Made:

    • Grid Engine Restructuring: Converted the vertical input stack into a responsive 2-column layout during the active registration state:
      • Email Input: Set to expand across the full horizontal boundary (grid-column: 1 / -1).
      • Name & Username: Aligned perfectly side-by-side on Row 2 (50% / 50% split configuration).
      • Password & Repeat Password: Aligned perfectly side-by-side on Row 3 (50% / 50% split configuration).
    • Desktop Visual Anchor: Configured explicit top padding (padding-top: 5.2rem !important) strictly targeting the right-side column layout wrapper (div[data-testid="column"]:nth-child(2)). This matches the baseline height of the left-hand branding stack, anchoring elements on a uniform horizontal axis.
    • Hasher Bug Fix: Cleaned up legacy initialization properties within the default credentials block on Line 18 to guarantee complete compatibility across modern package environments.
    • Mobile Breakpoint Adaptability: Injected a robust @media (max-width: 768px) media engine threshold to collapse the registration grid back to a single column and reset top paddings to zero, preventing element compression on narrow viewports.
  • Why This Was Changed:
    The default sequential input rows forced a massive vertical layout shift that mismatched the login view, while legacy hashing properties introduced an environment-level mismatch that would crash runtime containers. This complete patch restores structural balance, optimizes mobile touch-targets, and ensures seamless runtime initialization.

🎯 Verification & QA Quality Standards

  • Execution Verification: Thoroughly verified locally; the login and registration cards display beautifully without breaking structural boundaries.
  • Aesthetic Integrity: Layout modifications are sandboxed to the authentication container and do not impact global glassmorphism filters, font hierarchies, or internal analytics panels.
  • Regression Proof: All underlying session state configurations, OAuth pathways, and database YAML updates remain perfectly preserved.

📸 Visual Review (Post-Fix Layout State)

Login View State Register View State
Screenshot 2026-05-20 at 6 22 30 PM Screenshot 2026-05-20 at 6 22 36 PM

🔗 Closes

Closes #37

Track: GSSoC '26
Labels Requested: gssoc:approved, level:intermediate, type:design, type:feature, bug

@Adii-45
Copy link
Copy Markdown
Contributor Author

Adii-45 commented May 20, 2026

Hey @Payal-Dhokane, it looks like the repository has a branch protection rule requiring verified commit signatures. Since my local commits aren't GPG/SSH signed, GitHub is blocking it on my end. You should be able to bypass this or clear it easily by doing a Squash and Merge from your dashboard, which will automatically sign the final merge commit! Let me know if that works

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.

[BUG] [CRITICAL] Authentication Presentation Layer Overhaul: Refactoring Loose Sequential Inputs into Compact Responsive Grid Layout

2 participants