Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Filament Alerts

Filament Alerts Laravel Package

tomatophp/filament-alerts

Send notifications to users with reusable templates, multiple channels, and full logs. Built for Filament with native notifications, database and email drivers, FCM support, and custom drivers, types, and actions.

View on GitHub
Deep Wiki
Context7

Filament Alerts Sender is a Laravel/Filament package for sending notifications to your users through customizable notification templates and multiple delivery channels. It integrates seamlessly with Filament's native notification service via macros and supports full FCM service worker notifications, making it easy to reach users across web and mobile.

Built around a flexible driver system, the package handles everything from composing alerts to tracking delivery. Every notification is recorded in notification logs, and admin resources can be hidden when needed.

Key features:

  • Template-based notifications with multi-user support
  • Database, Email, and custom drivers
  • Custom types, actions, and drivers registration
  • Filament native notifications with macros
  • Built-in notification logs and FCM integration
Frequently asked questions about Filament Alerts
How do I install tomatophp/filament-alerts in a Laravel application?
Install the package with Composer using a version constraint that matches your Filament branch, then publish and run its migrations so the notification template and log tables exist. Register the plugin in your Filament panel provider and configure the drivers you plan to use. Because the package follows a Filament branch matrix, pin an explicit version in composer.json rather than using a floating constraint.
Which Filament versions does filament-alerts support?
Filament v5 is supported on the main line (v5.x), Filament v4 continues on a dedicated v4 branch, and Filament v3 is only available on earlier release lines. The practical risk is installing the wrong branch rather than being unable to upgrade, so pin the constraint explicitly. Before bumping Filament, cover your own custom actions with tests since the Filament action API has churned across majors.
Does filament-alerts support Laravel 12 and Laravel 13?
Version 5.0.0 adds Laravel 12 and 13 support backed by a dedicated CI matrix, so new projects on those releases can use the current main line. Projects still on Laravel 10 or 11 should validate against the package's older tags or budget for a framework upgrade. Treat older "Laravel 10+" claims as too coarse to plan against.
How do notification templates work and how do I send one by template key?
Templates are stored through the NotificationsTemplate model and can be created and edited from the Filament admin panel, with placeholders filled in at send time. You send a notification by referencing the template key, which resolves the template and renders it for the selected users. Version 5.0.0 fixed a broken path where sending by template key failed, so that lookup is now a first-class integration point worth covering with your own feature tests.
Which notification channels and drivers are included, and can I add my own?
The package ships a database driver and an email driver, integrates Filament's native notification service, and supports FCM push through a service worker. You can register custom drivers, custom notification types, and custom actions from your own service provider without modifying package code. That makes it straightforward to route alerts to SMS, Slack, or an internal system alongside the built-in channels.
Do I need Firebase to use filament-alerts?
Firebase is only required if you want FCM push notifications through the service worker integration. If your project already uses Firebase for a mobile app, this is essentially no extra work; otherwise expect moderate setup complexity around credentials, the service worker, and CORS. Email and database channels work without any Firebase configuration.
How does it integrate with Filament's native notification service and macros?
The package wraps Filament's native notifications and exposes macros so you can trigger alerts fluently from your own code and resources. Templates handle the content, while Filament renders the bell menu and toast UI your admins already know. Because it extends instead of replacing Filament's notification logic, existing workflows keep working.
Are notifications and templates logged in the database?
Yes, the package includes notification logs so you can audit what was sent, to whom, and through which channel. It also ships Filament resources for managing templates and reviewing logs, which you can hide from navigation if you prefer a quieter panel. Run the package migrations before sending anything so these tables exist.
Can I write tests around notification templates and sending?
Version 5.0.0 adds a NotificationsTemplate model factory plus regression tests and a Laravel 12/13 CI matrix, which lowers the cost of writing your own feature tests around template rendering. Use the factory to build templates and assert that sending by template key produces the expected notification on each channel. FCM delivery itself may still need end-to-end checks since it depends on external infrastructure.
What should I check before upgrading Filament or switching branches?
Pin the package version that matches your Filament major (v5.x for Filament v5, the v4 branch for Filament v4) and confirm it in composer.json before deploying. Recent releases fixed a production code path that loaded templates through a test-only model class and a regression where action register methods stopped accepting Filament\Actions classes, both signs of action-API churn. Also note the case-sensitive filesystem fix in the config file for the infolist class, which matters on Linux and container CI; remove any local config workarounds once you upgrade.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo