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
Slack Notification Channel

Slack Notification Channel Laravel Package

beyondcode/slack-notification-channel

A Laravel notification channel for sending rich Slack messages, including Block Kit layouts and interactive components. Integrates with Laravel’s notification system to deliver customizable Slack alerts from your app.

View on GitHub
Deep Wiki
Context7

Slack Notification Channel for Laravel using API tokens.

Frequently asked questions about Slack Notification Channel
How do I install beyondcode/slack-notification-channel in a Laravel app?
Install it with composer require beyondcode/slack-notification-channel and rely on Laravel package auto-discovery, so no manual service provider registration is required. Add your Slack webhook URL to config/services.php sourced from an environment variable or secrets manager. Then create a notification class that returns the Slack channel from via() and implements toSlack() with your message payload. No migrations, published assets, or Slack app review are involved.
Does this package support the latest Laravel versions?
You should verify this against your exact PHP and Laravel version matrix rather than assuming compatibility. The last release was January 9, 2024, and notification-channel packages are tightly coupled to framework internals, so a multi-year release gap is a real compatibility question. Test the channel in a staging branch before adopting it on a current Laravel major.
How do I send a Slack message with Block Kit blocks using Laravel notifications?
Return the Slack channel from your notification's via() method and build the payload in toSlack(). The package supports rich Slack messages including Block Kit layouts and interactive components. Keep the message construction inside the notification class so it stays testable and easy to migrate later.
What is the difference between this package and Laravel's built-in Slack notification channel?
Modern Laravel ships a first-party SlackChannel with Block Kit support, so this third-party package only makes sense if it closes a concrete gap. Realistic reasons include existing toSlack() code already standardized on this API, a message-builder ergonomic the built-in channel lacks, or a team that specifically wants the container-resolution test seam added in 1.10.0. Absent one of those, the correct call is to use the framework channel and avoid the dependency.
Where do I configure the Slack webhook URL for this channel?
Put the incoming webhook URL in config/services.php and source it from an environment variable or a secrets manager rather than committing it. Delivery is strictly webhook-based, including channel and sender identity settings, so no Slack app OAuth flow is required. Decide who owns the Slack workspace and webhook URL rotation before going to production.
Can I test Slack notifications without calling the real webhook?
Yes. Version 1.10.0 resolves the channel from Laravel's service container instead of constructing it directly, which creates a genuine seam for test fakes and bindings. You can bind a fake channel in the container or use Notification::fake() to assert the notification was sent without hitting Slack. Note that subclasses with non-autowirable constructor arguments will now fail at send time rather than instantiation.
Does this package support Slack apps, OAuth, or multi-workspace distribution?
No. It is an incoming-webhook notification channel and does not fit Slack app OAuth, multi-tenant distribution, or customer-facing Slack surfaces. It is intended for internal operational messaging such as deploy events, error-budget breaches, billing exceptions, and approval handoffs. If you need per-workspace routing, use the container seam to decorate or route rather than expecting it from the package.
What are the maintenance and supply-chain risks of using this package?
The signals are moderate: roughly 85 stars, zero dependents, a single-maintainer profile, and a last release in January 2024. The 1.10.0 release is one internal change from a first-time contributor, which is behaviorally safe for default consumers but worth reviewing. Treat it as an optional integration adapter with a documented exit plan, not a long-term capability purchase.
How do I handle failed Slack sends, retries, and rate limits?
The package does not solve rate-limit handling, retries, or failure observability, so those remain your responsibility. Queue the notification, listen for notification-failed and failed job events, log failures, and alert on the alert channel itself. Webhook-only delivery also means you should define a dead-letter or fallback path for paging-critical messages.
How do I migrate away from this package to Laravel's first-party Slack channel?
Replace the channel returned from via() with Laravel's SlackChannel, rewrite the toSlack() payload against the built-in Block Kit API, and run your existing notification tests against the new channel. Because the package is MIT licensed with a small surface, forking or vendoring is also a viable fallback. Remove the Composer dependency once the first-party channel covers the use case and document the trigger that would make you revisit the decision.
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.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core