Skip to content

feat(notifications): add notification bell with dropdown to header (#422) - #461

Open
oladev2026-tech wants to merge 1 commit into
Dfunder:mainfrom
oladev2026-tech:422-notification-bell
Open

feat(notifications): add notification bell with dropdown to header (#422)#461
oladev2026-tech wants to merge 1 commit into
Dfunder:mainfrom
oladev2026-tech:422-notification-bell

Conversation

@oladev2026-tech

Copy link
Copy Markdown

Summary

Adds a notification bell to the authenticated header so logged-in users can see recent activity at a glance.

Changes

  • app/components/layout/NotificationBell.tsx (new): Bell button with a red unread-count badge (aria-label reflects the count for screen readers). Clicking opens a dropdown panel listing 5 mock notifications with title, body, timestamp, and an unread dot. Click-outside and Escape close the panel. A header action Mark all read flips the unread state on every item and is disabled when there is nothing to mark. The footer has a View all notifications link to /dashboard/notifications (a follow-up route; the link is the only consumer-page-side change spec'd by Build notification bell component #422).
  • app/components/layout/Header.tsx: imports and renders <NotificationBell /> in the authenticated desktop block, immediately before the user avatar. No anonymous-user / mobile-menu change.

Notes

  • Mock data is local to the component so the demo always renders 5 items with a varied read/unread mix; swap for /api/notifications when that endpoint ships.
  • Mark-all-read is client-state only — once the API is in place, change setNotifications(...) to POST /api/notifications/read-all and reconcile the returned list.
  • Bell is shown only on md+ viewports to match where the user menu already lives; mobile menu continues to render the standard destinations.

Closes #422

…funder#422)

Adds app/components/layout/NotificationBell.tsx — a Bell button with a red unread-count badge that opens a dropdown panel listing 5 mock notifications, each with title/body/timestamp and an unread indicator. Clicking outside or pressing Escape closes the panel; the Mark all read action flips every item to read. Disabled when there are no unread items.\n\nAlso modifies app/components/layout/Header.tsx to mount <NotificationBell /> next to the user avatar in the authenticated desktop nav block (anon state is unchanged). No mobile/desktop parity changes in this PR — the bell is shown in the authenticated desktop block only because the existing mobile menu already has the same set of destinations.\n\nCloses Dfunder#422

Closes Dfunder#422
@drips-wave

drips-wave Bot commented Jul 28, 2026

Copy link
Copy Markdown

@oladev2026-tech Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

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.

Build notification bell component

1 participant