- 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.