Notifications in io.Connect Desktop and io.Connect Browser Comparison

io.Connect Desktop and io.Connect Browser both support notifications. Both can raise toasts, both can consolidate notifications in a Notification Panel, and both expose notification APIs for app developers. The difference is where they run, how they are surfaced, and what platform capabilities they depend on. io.Connect Desktop notifications are desktop-integrated, while io.Connect Browser notifications are web-platform dependent. In Desktop, the notification experience is controlled by the platform itself. In io.Connect Browser, parts of the experience depend on browser permissions, Home App setup, and, for notifications with actions, a registered Service Worker in the Main app.

In io.Connect Desktop, notifications are part of a desktop-native experience. The platform provides a notification service that normalizes and consolidates notifications from different apps and delivers them to the user as both toasts and ordered lists in a Notification Panel. Desktop also supports notification badges on the Windows taskbar, macOS Dock, and the system tray, which makes missed notifications hard to miss.

In io.Connect Browser, notifications are built around the browser notification model and extended by io.Connect (Notifications Panel, Settings). The Browser Notifications API can display native notifications with actions, supports the DOM Notifications API settings, and adds Interop-based click handling. Io.Connect Browser also includes a Notification Panel in the Home App, plus Notification Settings for source subscriptions.

io.Connect Desktop gives you a notification experience that behaves like part of the operating system, while io.Connect Browser gives you a notification experience that behaves like part of the browser workspace and Home App shell.

Platform io.Connect Desktop io.Connect Browser
Container Electron based app Web browser
Delivery Desktop OS notifications, toasts, and Notification Panel In-browser native notification toasts and Home App Notification Panel
Storage Local persistent store Session storage
UX System tray integration, taskbar/Dock badges, launcher-accessible Notification Panel Browser-native UI, Home App notification icon, Notification Panel, Notification Settings. toasts are shown as if they are coming from the web browser, which serves as a container.
Notification center Notification Panel with ordered lists of notifications Notification Panel in the Home App where notifications are consolidated and displayed
Badges Windows taskbar / macOS Dock badge plus system tray badge Badge on the Home App notification icon
Severity Supports severity-based toast stacking and severity-aware UI customization Supports per-notification severity in RaiseOptions
Snoozing Supported, including configurable snooze duration and enablement Supported through notification state, including “Snoozed” and setState()
Toast / panel control Configurable toast behavior and panel operations through io.notifications.panel Global control through configure() and per-notification control through showToast and showInPanel. Clients can’t embed Excel tables or HTML in the toasts, only images
Actions Supported through the Desktop Notifications API, can be grouped Supported, requires a Service Worker, limited to 2
Permissions model Platform-controlled desktop experience Depends on browser permissions and Home App setup flow

io.Connect Desktop provides great flexibility and customization. Desktop notification toasts can be configured to appear individually or in stacked mode, and stacked toasts can be grouped by severity or by application. Desktop also supports snoozing at configuration level, and the Notification Panel can be controlled programmatically through io.notifications.panel, including show(), hide(), toggle(), isVisible(), and onVisibilityChanged().

At the same time, Browser notifications are more capable than people sometimes think. Browser supports severity on individual notifications through the severity property on RaiseOptions, with values such as “Low”, “Medium”, “High”, and “Critical”. It also supports notification state, including “Snoozed”, and allows apps to update state through setState(). In other words, severity and snoozing are not Desktop-only concepts.

Browser also gives you both global and per-notification control. At global level, configure() supports enable, enableToasts, showNotificationBadge, sourceFilter, and clearNotificationOnClick. At per-notification level, RaiseOptions includes showToast and showInPanel, which means a notification can be routed to the toast UI, the Notification Panel, or both.

What to use?

If you need a more desktop-native notification experience with OS-level surfacing, shell integration, badges outside the app window, and richer panel control, io.Connect Desktop is the stronger fit.

If you want notifications inside a browser-based workspace, centered around the Home App and aligned with web delivery patterns, io.Connect Browser gives you that model, while still supporting severity, snoozing, filtering, badges, actions, and per-notification routing. Just keep in mind Browser notifications remain tied to browser permissions for the full experience.