Skip to content

Notifications & real-time

A top-bar bell shows notifications with a live unread badge, kept in sync across every device in real time over SignalR.

Notifications bell and dropdown

For users

Everything updates in real time — a new notification, or marking one read on another device, appears instantly with no refresh. New arrivals also raise a toast, and when the tab is in the background a user can opt into OS-level browser notifications.

The bell's dropdown lists recent items with Mark all read and See all; the full /notifications page filters by All / Unread, pages through history, and lets you mark items read/unread or dismiss them — with designed loading, empty, and error states throughout.

Per-user preferences live on the profile under Notifications: toggle email copies of each notification (sent off the request path) and browser notifications. Old notifications are cleaned up automatically after 90 days.

For developers

One call persists the notification, pushes it over the hub, and (per the user's setting) queues the email:

csharp
await _notifications.NotifyAsync(userId, new NotificationPayload(
    title: "Order shipped",
    body: $"Order {order.Number} is on its way.",
    link: $"/sales/orders/{order.Id}"));

In Development there's a Send test button on the /notifications page to fire a sample to yourself.

Community edition

Real-time notifications are a Pro feature. See Editions.

NetForge Community is MIT-licensed. Pro is a commercial edition.