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

Pusher Bundle Laravel Package

laupifrpar/pusher-bundle

Pusher Bundle integrates Pusher real-time messaging with Laravel, offering configuration and helpers to publish events and subscribe clients to WebSocket channels. It simplifies adding live updates and notifications to PHP applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Real-time feature scoping (roadmap input). This package remains a thin Symfony DI wrapper around the official Pusher PHP SDK, and the 6.1.0 release adds one meaningful capability: end-to-end encryption support (Pusher encrypted channels). That matters for compliance-sensitive surfaces — private-encrypted chat, sensitive presence metadata, regulated notifications — where the transport must guarantee the vendor cannot read payloads. It still contributes almost nothing to the feature decision itself; treat it as evidence for "we need a pub/sub channel with E2EE," not as the reason to adopt this bundle.
  • Build vs. buy vs. wire-it-yourself. The bundle's actual surface is config plumbing: register a Pusher client service, read app_id/key/secret/cluster from config, expose it to controllers. E2EE adds configuration and key-management concerns (master key provisioning, rotation, and where decryption happens) that a thin wrapper does not solve — and which you want to own explicitly rather than inherit from a bundle. Any build-vs-adopt analysis still lands on "adopt the vendor SDK, skip the bundle."
  • Realtime vendor selection. The decision with real cost consequences is Pusher (hosted, per-connection pricing) vs. self-hosted open alternatives — Laravel Reverb (first-party, free), Soketi, Centrifugo — vs. protocol-based options like Mercure (SSE, Symfony-friendly, maintained by a Symfony-adjacent team). The 6.1.0 E2EE addition is a genuine differentiator worth checking in that comparison: verify E2EE parity before assuming Reverb/Soketi/Mercure are drop-in substitutes for encrypted-channel requirements. This bundle remains Pusher-specific and bakes vendor lock-in into the DI layer, which makes a later swap more expensive than direct SDK integration.
  • Legacy platform triage. If the question is "what do we do with our Symfony 2 estate?", this package is a data point about the long tail. A 6.1.0 tag shows the project is not fully dormant — contrary to a pure abandonment read — but 65 stars, zero dependents, a single maintainer, and a Symfony 2.8 base that reached end-of-life in 2018 keep it in the "frozen dependencies we must replace before any PHP upgrade" backlog, not the "evaluate for adoption" backlog. The E2EE addition does not change that.
  • ⚠️ Framing correction worth surfacing to stakeholders: the brief describes this as a Laravel/PHP package. It is a Symfony 2 bundle. Symfony 2.8 reached end-of-life in 2018. If the product is on Laravel, this package is not a candidate at all — Laravel has first-party broadcasting, Echo, and Reverb, and would use pusher/pusher-php-server directly. The mismatch alone should end the evaluation if Laravel is the target stack.

When to Consider This Package

Consider it only under a narrow, time-boxed set of conditions:

  • You are maintaining an existing Symfony 2.x application that already uses Pusher, and you need to keep the current integration compiling while you plan a migration. Even then, prefer pinning the official Pusher SDK directly.
  • You specifically need encrypted channels now and are already committed to Pusher. The 6.1.0 release exposes E2EE; confirm the bundled SDK version actually implements it, and confirm you are comfortable owning master-key provisioning and rotation outside the bundle.
  • You need a config-driven service definition and cannot spare the (very small) effort of writing one.
  • You have verified the package's pinned SDK version supports the current Pusher API — specifically cluster configuration and TLS. Older Pusher wrappers have shipped hardcoded defaults pointing at legacy endpoints, which fail silently or throw at runtime once Pusher retires them.
  • You have audited PHP 8 compatibility. A Symfony 2-era bundle with a recent minor tag is still unlikely to be tested against modern PHP, and an unmaintained package in the request path is a supply-chain and security-patching liability.

Look elsewhere — decisively — when:

  • The stack is Laravel or Symfony 5/6/7. Use the official SDK directly. For Laravel, use Broadcasting + Echo; for self-hosting, Reverb. For modern Symfony, Mercure is the idiomatic, actively maintained path.
  • You are starting anything new. Zero dependents and a single maintainer mean no ecosystem pressure to keep it current; abandonment risk remains high and there is no community to absorb a handoff.
  • You need presence channels, webhooks, or batch triggers. Encrypted channels are now covered by 6.1.0, but verify the rest explicitly — thin wrappers often expose only trigger(), and you'll end up reaching past the bundle to the SDK anyway, at which point the abstraction is pure overhead.
  • Realtime is a revenue-bearing surface (chat, live ops, multiplayer state). Buy a supported vendor integration or self-host a maintained server; do not put an unmaintained 65-star bundle in the critical path.
  • You need SLAs, support contracts, or a security disclosure channel. None of these exist here.

How to Pitch It (Stakeholders)

For executives (one line): This is a small, single-maintainer Symfony 2 wrapper around Pusher's official PHP library. Its 6.1.0 release adds end-to-end encryption, which is a real capability — but it does not make the wrapper a strategic dependency, and it should not be adopted for new work. The real decision is the realtime transport (hosted Pusher vs. self-hosted Reverb/Soketi/Mercure), and that decision is worth real money in per-connection pricing and lock-in — with E2EE now a selection criterion. The wrapper itself is a 30-minute integration we can own outright.

For engineering: Do not add this dependency. Wire the official pusher/pusher-php-server SDK into the service container yourself — it is a config block and a factory, and you keep control of cluster, TLS, timeouts, error handling, and E2EE key management. Encryption is exactly the kind of code where you do not want a thin, unmaintained wrapper between you and the vendor SDK. If we are on Symfony 2 today, this is a migration artifact to retire, not a component to standardize on. If we are on Laravel, the question is moot: use first-party broadcasting.

Decision recommendation: Decline for adoption; flag as legacy triage. The 6.1.0 E2EE addition is a genuine feature and a minor, non-breaking release, but it does not move the fundamentals: Symfony 2 EOL since 2018, zero dependents, single maintainer, Pusher lock-in at the DI layer. The prior score of 1.7 with an opportunity score of 35.6 stands materially unchanged. Treat E2EE as input to the transport evaluation — verify vendor parity — not as a reason to adopt this bundle. Spend the evaluation budget on the transport decision, where the roadmap, cost, and lock-in consequences actually live.

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