🎬 Simulate:
Notification Inbox
Panel This panel is opened by clicking the 🔔 bell icon in the navigation bar. Shown here as a standalone page for prototype review.
Notifications
3
Unread (3)
Your assignment has been graded
You scored 85/100 on "Business Communication" assignment.
New course available: "Advanced Excel 2026"
A new course matching your interests has been added to the catalog.
Assignment deadline reminder
Your assignment in "Data Analysis" is due in 2 days.
Read
Certificate issued for "Digital Marketing Basics"
Congratulations! Your certificate is ready to download.
Payment receipt for course purchase
Payment confirmed for "Project Management Fundamentals".
Screen Flow (from flow.puml):
→ select notification → navigate to context page
→ mark all as read → stays on panel (count → 0)
→ close panel → exit
📝 Spec notes — UC-NOT.03 / SCR-NOT.06 (fields, actions, requirements)
Identity
- Screen: SCR-NOT.06 — Notification Inbox (panel)
- Use case: UC-NOT.03 — View Notification Details
Brief description
Dropdown panel opened from the bell icon — displays in-app notifications sorted newest first, divided into Unread / Read groups. User taps a notification to navigate to relevant context, or taps "Mark all as read" to clear all unread. Panel closes on outside click.
Fields
unread_count"Unread count" — number · computed ·InAppNotification.is_read· read-only · Headernotification_title"Title" — text ·InAppNotification.title· read-only · Notification listnotification_body_preview"Summary (truncated)" — text · max 100 chars ·InAppNotification.body· read-only · Notification listnotification_time"Time" — datetime · relative format ("2 minutes ago") ·InAppNotification.created_at· read-only · Notification listis_read"Read status" — boolean ·InAppNotification.is_read· read-only · Notification listempty_message"Empty state message" — literal "No notifications yet" · visible when notification_count == 0 · Empty state
Actions
select_notification"Select notification" — always enabled · marks as read + navigates to context page · triggers UC-NOT.03-M-2mark_all_read"Mark all as read" — enabled when unread_count > 0 · triggers UC-NOT.03-A-2A-1
Additional requirements
- Unread items have a visually distinct background color or indicator, clearly differentiated from read items.
- Time is displayed in relative format ("2 minutes ago", "Yesterday") rather than absolute timestamp.