🧩 Feature Description
Currently, long pages like Courses, Pathway, Resources, and Events require users to manually scroll all the way back to the top. There is no "Back to Top" button anywhere on the site, which creates a poor user experience especially on mobile devices.
🎯 Problem
- Pages like
/courses, /pathway, /resources, and /events are content-heavy and require excessive scrolling
- No quick navigation option exists to return to the top of the page
- Mobile users are especially affected as scrolling back is tedious
✅ Proposed Solution
Add a floating "Back to Top" button that:
- Appears only after the user scrolls down 300px or more
- Is fixed at the bottom-right corner of the screen
- Smoothly scrolls the page back to the top on click
- Has a fade-in/fade-out animation when appearing/disappearing
- Is fully accessible (keyboard navigable + aria-label)
- Matches the existing DevPath UI theme (dark/light mode compatible)
🖼️ Expected Behavior
- User opens any long page (e.g.
/courses)
- User scrolls down past 300px
- A floating arrow-up button appears at bottom-right
- User clicks it → page smoothly scrolls back to top
- Button disappears when user is near the top
💡 Implementation Hint
- Use a
useScrollPosition hook or window.scrollY in a useEffect
- Use Tailwind classes for positioning:
fixed bottom-6 right-6 z-50
- Add
scroll-behavior: smooth or use window.scrollTo({ top: 0, behavior: 'smooth' })
- Show/hide with conditional Tailwind class or CSS transition
📋 Acceptance Criteria
🏷️ Suggested Labels
enhancement, good first issue, level: beginner, ui/ux, gssoc26
🧩 Feature Description
Currently, long pages like Courses, Pathway, Resources, and Events require users to manually scroll all the way back to the top. There is no "Back to Top" button anywhere on the site, which creates a poor user experience especially on mobile devices.
🎯 Problem
/courses,/pathway,/resources, and/eventsare content-heavy and require excessive scrolling✅ Proposed Solution
Add a floating "Back to Top" button that:
🖼️ Expected Behavior
/courses)💡 Implementation Hint
useScrollPositionhook orwindow.scrollYin auseEffectfixed bottom-6 right-6 z-50scroll-behavior: smoothor usewindow.scrollTo({ top: 0, behavior: 'smooth' })📋 Acceptance Criteria
🏷️ Suggested Labels
enhancement,good first issue,level: beginner,ui/ux,gssoc26