laranail/notifications is not published to Packagist, so there is no registry-version badge to show: see Install.
Multi-channel notifications for Laravel — 12 SSRF-guarded channels (email, log, database, cache, slack, discord, push, sms, webhook, file, console, apple-business-messages) behind one unified, typed fluent API where
send()/broadcast()return a richNotificationResult. Fail-soft, extensible, queueable.
Compatible with PHP ^8.3 || ^8.4 || ^8.5 and Laravel ^13.0.
composer require laranail/notificationsThe provider is auto-discovered and the log channel is on by default, so the example below
works straight after install. To reach anything else:
-
Publish the config if you want to edit it (it lands in
config/laranail/notifications.php):php artisan vendor:publish --tag=laranail::notifications-config
-
Enable each extra channel through its env keys, e.g. Slack:
NOTIFICATIONS_SLACK_ENABLED=true SLACK_WEBHOOK_URL=https://hooks.slack.com/services/...
use Simtabi\Laranail\Notifications\Facades\Notifications;
$result = Notifications::send(
message: 'Nightly backup completed',
data: ['size_mb' => 142],
channels: ['log'],
);
$result->isSuccessful(); // true
$result->getFailedChannels(); // []Broadcast to every registered channel:
Notifications::broadcast('Server is on fire!', ['host' => gethostname()], 'critical');The full walkthrough is in Getting started; everything else is in the documentation index.
Full documentation is at opensource.simtabi.com/documentation/laranail/notifications — getting started, the channels, the typed result object, SSRF guarding, writing custom channels, queued delivery, and configuration.
Issues and PRs are welcome — see CONTRIBUTING.md. Report vulnerabilities per SECURITY.md (opensource@simtabi.com); participation follows the Code of Conduct.
MIT © Simtabi LLC. See LICENSE.