[ Package conformance ]

Notifications · >=0.20.0

expo-notifications

real local notification delivery via browser Notification + sootsim in-engine overlay; full upstream API surface present; matches iOS-simulator behavior where APNs registration silently fails. per docs/compat-scoring.md "score it high only when the full public API surface is present and returns the same unavailable/clean state an app should expect in development."
93%
API coverage
No visual conformance cases have been published for this package yet. The registry summary below describes what the compat layer implements.
Working (21)
getPermissionsAsync/requestPermissionsAsync through the shared system permission registryscheduleNotificationAsync (fires real browser Notification when host capability allowsplus the in-engine banner)cancelScheduledNotificationAsynccancelAllScheduledNotificationsAsyncgetAllScheduledNotificationsAsyncgetPresentedNotificationsAsyncdismissNotificationAsyncdismissAllNotificationsAsyncsetBadgeCountAsync (navigator.setAppBadge if available)getBadgeCountAsyncaddNotificationReceivedListener/ResponseReceivedListener/DroppedListener/PushTokenListenergetLastNotificationResponseAsync + syncclearLastNotificationResponseAsync + syncuseLastNotificationResponse hookgetNextTriggerDateAsyncsetNotificationHandlerpresentNotificationAsyncchannel + channel-group CRUDcategory CRUDAndroidImportance/AndroidNotificationVisibility/IosAuthorizationStatus/PermissionStatus enums
Missing (3)
real push token registration (getDevicePushTokenAsync returns a placeholder UUID — there is no FCM/APNs provisioningservice-worker push subscriptionor backend-uploadable token); background task delivery (registerTaskAsync/unregisterTaskAsync/isTaskRegisteredAsync are noops — service-worker push wiring is not implemented); scheduled-notification persistence across reload (setTimeout-only — page refresh drops the queue); subscribeToTopicAsync/unsubscribeFromTopicAsync FCM topic binding; setAutoServerRegistrationEnabledAsync