Feature Request
Login.jsx currently uses window.alert() / alert() for all user feedback such as login errors, success messages, forgot-password flow, and reset-password flow (8 call sites total). Native browser alerts block the entire page, can't be styled, and feel unprofessional compared to the rest of the UI.
Proposed Solution
Add a small, reusable Toast component (frontend/src/components/common/Toast.jsx):
- Auto-dismisses after ~3 seconds
- Has a manual close (×) button
- Supports
success / error / info styling
- No external dependencies, plain React state + inline styles
Replace all alert() calls in Login.jsx with this component.
Scope Note
There are ~27 alert() calls across other files in the codebase (AdminHome, AllCourses, Register, TeacherHome, etc.) — this issue is scoped to Login.jsx only to keep the change focused and reviewable. Happy to open follow-up issues for the other files if this is merged.
Additional Context
I'd like to combine this with issue #24 (Settings dropdown overlap + Activity Logs filter panel overflow) into a single PR, since I'm already working on that fix and this keeps related frontend UX polish together, per your earlier suggestion to combine smaller fixes into one meaningful PR.
I've already built and tested this locally. happy to open the PR if assigned.
Feature Request
Login.jsxcurrently useswindow.alert()/alert()for all user feedback such as login errors, success messages, forgot-password flow, and reset-password flow (8 call sites total). Native browser alerts block the entire page, can't be styled, and feel unprofessional compared to the rest of the UI.Proposed Solution
Add a small, reusable
Toastcomponent (frontend/src/components/common/Toast.jsx):success/error/infostylingReplace all
alert()calls inLogin.jsxwith this component.Scope Note
There are ~27
alert()calls across other files in the codebase (AdminHome, AllCourses, Register, TeacherHome, etc.) — this issue is scoped toLogin.jsxonly to keep the change focused and reviewable. Happy to open follow-up issues for the other files if this is merged.Additional Context
I'd like to combine this with issue #24 (Settings dropdown overlap + Activity Logs filter panel overflow) into a single PR, since I'm already working on that fix and this keeps related frontend UX polish together, per your earlier suggestion to combine smaller fixes into one meaningful PR.
I've already built and tested this locally. happy to open the PR if assigned.