Skip to content

[ENHANCEMENT] UI/UX Fixes Bundle: Currency Input, SVG Icons, Password Toggle, Mobile Responsiveness, and Theme Toggle #283

@NithinRegidi

Description

@NithinRegidi

Describe the bug

Problem Statement

Venturalink's user interface has several UX issues affecting usability and visual consistency across pages. Instead of creating 4+ small separate issues, this bundle consolidates multiple related problems into one comprehensive fix to improve the overall user experience without requiring external dependencies.

Specific Issues Included

  1. Currency Input Validation: The investment amount field on create-proposal.html rejects formatted values like "₹3,00,000" (with currency symbols and commas), causing browser warnings and failed form submissions.
  2. SVG Icon Loading: Base64-encoded SVG icons (e.g., upload/file icons) fail to render properly, breaking UI elements on the create proposal page.
  3. Password Visibility Toggle: Login and register pages lack a show/hide password toggle, reducing usability (related to open issue Add Show/Hide Password Toggle & Strong Validation #202).
  4. Mobile Responsiveness: Elements/cards misalign on mobile views (e.g., on proposals.html, related to Cards overlap / misaligned on cards section #273).
  5. Theme Toggle Consistency: Dark/light mode toggle doesn't work on all pages (e.g., about.html, related to Dark/Light Mode Toggle Not Working on All Pages #201).

Proposed Solution

  • Change currency input to type="text" with custom validation in create-proposal.js.
  • Replace base64 SVGs with direct Lucide SVG elements in HTML/JS.
  • Add toggle buttons and event listeners in login.html/register.html and auth.js.
  • Update CSS media queries in styles/*.css for mobile fixes.
  • Ensure theme.js runs on all pages and CSS variables are applied.

Files to Modify

  • create-proposal.html, scripts/create-proposal.js
  • login.html, register.html, scripts/auth.js
  • styles/*.css, scripts/theme.js
  • Any HTML files with icons

Difficulty

  • ✅ Required Labels (Both Mandatory)

Before a PR is merged, it must contain exactly two labels:

  1. apertre3.0 – Identifies the PR as part of the Apertre 3.0 program
  2. One Difficulty Labeleasy / medium / hard

⚠️ PRs without both labels will NOT be considered valid, even if the code is correct.

To Reproduce

Steps to Reproduce

  1. Visit create-proposal.html and try entering "₹3,00,000" in the amount field → Warning appears.
  2. Check for missing icons on the page.
  3. Go to login.html or register.html → No password toggle.
  4. View proposals.html on mobile → Misaligned cards.
  5. Toggle theme on about.html → No change.

Expected behavior

Expected Behavior

  • Currency input accepts and validates properly formatted amounts.
  • All SVG icons load and display correctly.
  • Password fields have visibility toggles.
  • All pages are fully responsive on mobile devices.
  • Theme toggle works consistently across the site.

Additional context

No response

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions