emuniq/filament-browser-notifications
Automatically turns every Filament database notification into a browser push notification, no code changes required. Installs VAPID keys, migrations, and the User trait in one command, then auto-registers across all panels with a subscription prompt and profile section.
ActionGroup are now resolved (previously only top-level actions were read, so grouped actions fell back to /admin)./admin; they open the default panel's path.silent notifications now work with Filament v5: the flag is read from ->viewData(['silent' => true]) (Filament's Notification has no ->data() method). README updated accordingly.manifest.json no longer hardcodes start_url: "/admin" and theme_color: "#d97706". Both are now derived from the active Filament panel — the panel path and primary color respectively — so installed PWAs open the correct route with on-brand chrome. The primary color is converted to hex across Filament majors (RGB triplets in v3, oklch() in v4/v5).->openUrlInNewTab() on actions — the service worker opens a new window/tab instead of navigating the existing one.manifest.start_url and manifest.theme_color config options to override the derived manifest values.->profile(isSimple: true)). It is registered on both the PAGE_END and SIMPLE_PAGE_END render hooks, scoped to the panel's profile page, so it appears consistently for both simple and standard profile pages.browser-notifications:install now applies the HasPushSubscriptions trait correctly when Notifiable is declared alongside other traits (e.g. use Notifiable, HasRoles; or use HasApiTokens, Notifiable;). Previously the trait was imported but never added to the class body, causing BadMethodCallException on User::pushSubscriptions().HasPushSubscriptions by hand. The write-permission requirement is documented in the README.Notifiable arrangements and idempotency.How can I help you explore Laravel packages today?