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 Laravel Laravel Package

jeremykenedy/slack-laravel

Slack integration for Laravel: send messages through incoming webhooks or the Slack Web API, route logs to Slack channels, and build notifications with a simple, configurable wrapper. Includes channel helpers and clean error handling for fast setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Ship internal Slack alerting as a 1-sprint quick win. The package's only job is POSTing JSON to a Slack incoming webhook, so the PM decision it unlocks is "do we want channel-based operational visibility?" — deploy notices, exception alerts, signup/form-submission pings, trial-expiry and billing-failure warnings — without standing up a notification service.
  • Build vs buy skews toward "neither": reuse. The realistic alternatives are (a) this package, (b) Laravel's built-in Slack notification channel (Notification::route('slack', ...)), or (c) ~30 lines around Laravel's HTTP client. The PM's real decision is where alerts are allowed to come from and who owns the channel, not which code path fires the POST. Choose this package only if its config-publish + facade convention saves your team more than the maintenance of one extra dependency costs.
  • Scoping guardrail: one-way, fire-and-forget only. This is a transport for outbound messages. It does not support OAuth installs, slash commands, interactive buttons/approvals, Slack Events API, threads-in-reply, or multi-workspace distribution. Any roadmap item phrased as "Slack integration" or "notify the customer in their Slack" is a different, much larger product and must not be estimated off this package.
  • Use-case shortlist worth approving: ops/on-call alerting, deploy and CI status, internal admin notifications for new orders/signups, error-budget and cron-failure warnings, lightweight workflow pings (new lead, refund requested, waitlist signup).
  • Use cases to reject or defer: customer-facing notifications, anything requiring delivery guarantees/audit trails (no retries or dead-lettering here — queue it yourself), anything where a Slack outage or a rotated webhook can silently break a business process.
  • Roadmap framing: position it as internal tooling debt reduction, not a platform capability. It buys you a week of engineering time now and should be scheduled with an explicit note that it may be replaced by the native channel or inlined later — a reversible decision, which is exactly why it is safe to make quickly.

When to Consider This Package

Consider it when:

  • The product is a Laravel app (the package is explicitly Laravel-native; the tracked release line targets Laravel 8, so it fits maintenance-mode/legacy apps best — verify illuminate/support and PHP constraints in composer.json before committing).
  • You need outbound-only, human-readable notifications to one or a few internal Slack channels.
  • The team wants a conventional, config-file-driven setup (publishable config, .env webhook URL, facade/service provider) rather than hand-rolled HTTP calls scattered across the codebase.
  • Volume is low and best-effort delivery is acceptable; nothing financially or legally material depends on the message arriving.
  • The engineering cost of adoption is genuinely trivial for you (one controller or console command, one feature test at the integration seam).

Look elsewhere when:

  • You need two-way or interactive Slack behaviour — use Slack's Bolt/SDK or the Events API; this package is the wrong shape entirely.
  • You need multi-tenant / multi-workspace OAuth installs for customers.
  • You are on Laravel 9/10/11+ or a modern PHP floor — the last release (2020) predates those frameworks; assume the dependency ceiling is a constraint until proven otherwise, and treat a Composer conflict as the default expectation rather than a surprise.
  • You need auditability, retries, rate-limit handling, or delivery SLAs — build a queued job with retry/backoff, or use Laravel's native Slack channel, which already gives you the notification abstraction and queue integration for free.
  • Your dependency-governance policy blocks unmaintained packages: 54 stars, a single maintainer, and no release since October 2020 mean you are effectively adopting a vendored snippet with a service provider attached. If policy says no, the honest answer is "inline it" — the same capability is a few dozen lines you control.

Decision rule to give the team: if Laravel's built-in Slack notification channel meets the need, use it and skip this dependency; if you specifically want this package's config/facade ergonomics and your stack matches its constraints, adopt it deliberately as a short-lived, swappable dependency.

How to Pitch It (Stakeholders)

For executives (30 seconds): "We can give the team real-time Slack alerts — failed deploys, errors, new signups, billing problems — for about a day of engineering and zero licence cost (MIT). It's internal-only, invisible to customers, and reversible: the integration is thin enough that we can swap or inline it later without touching product code. The one caveat is that the underlying library hasn't been updated since 2020, so we're treating it as a small, replaceable utility rather than a strategic dependency — no roadmap commitment rides on it."

For engineering leadership: "This is a thin, Laravel-native wrapper over Slack incoming webhooks — config publishing, a facade, service provider, rich-message/attachment formatting. It gives us one conventional place to send alerts instead of ad-hoc Guzzle calls, at the cost of one dependency we don't control. It is outbound-only: no OAuth, no interactivity, no delivery guarantees — queue it and wrap it in try/catch if the alert matters. Compatibility with our Laravel version is the gating question; the tracked release line is Laravel 8-era, so check Composer constraints first and expect to fall back to Laravel's built-in Slack channel or a ~30-line HTTP client if it won't resolve."

Ask being approved: one sprint-day of work, a named internal owner for the Slack webhook secret and channel list, and agreement that this is a best-effort internal utility with no uptime or compliance obligation attached to it.

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.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib