In-app notification center
Notifications are per-user rows with a read_at timestamp — unread is the absence of read_at, not a separate boolean you have to keep in sync.
What this skill helps you build
A bell with an unread count, a dropdown list of per-user notifications, read/unread state, and mark-all-read.
The production takeaway
Notifications are per-user rows with a read_at timestamp — unread is the absence of read_at, not a separate boolean you have to keep in sync.
Inside this skill
The full skill expands these implementation areas with decisions, edge cases, prompts, tests, and framework-specific code.
Unlock the full implementation
Paid access includes the complete skill body, implementation prompt, common mistakes, production checklist, and code examples where this skill includes them.