A C# library for sending native system notifications across multiple desktop platforms. Supports Windows (toast notifications), Linux (freedesktop.org), and macOS (NSUserNotification).
dotnet add package NativeNotificationvar manager = ManagerFactory.GetNotificationManager(new NativeNotificationOption() { AppName = "AppName" });
var notification = manager.Create();
notification.Title = "Title";
notification.Message = "Hello Message.";
notification.Buttons.Add(new ActionButton("Button Text", () => Console.WriteLine("button clicked.")));
notification.Show(new NotificationDeliverOption() { Duration = TimeSpan.FromSeconds(10) });| Windows | Linux | macOS | |
|---|---|---|---|
| TFM requirements | net8.0-windows10.0.17763.0 | net8.0 | net8.0-macos |
| Title | ✅ | ✅ | ✅ |
| Message | ✅ | ✅ | ✅ |
| Duration | ✅ | ✅ | ✅ |
| Images | ✅ | ✅ | ✅ |
| Progress Bars | ✅ | ❌️ | ❌️ |
| Notification Actions | ✅ | ✅ | ✅ |
| Clear Delivered Notifications | ✅ | ✅ | ✅ |
| Get Delivered Notifications | ✅ | ✅ | ✅ |
| Replace Notifications | ✅ | ✅ | ✅ |