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

Ratchet Bundle Laravel Package

p2/ratchet-bundle

A Symfony bundle that integrates the Ratchet WebSocket library, helping PHP developers add real-time, bidirectional communication to applications. It provides configuration and integration points for running WebSocket servers alongside Symfony.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

A caveat before the bullets: despite being filed under "Laravel/PHP," this is a Symfony bundle, not a Laravel package. That shapes everything below — it informs architecture and build-vs-buy questions, but it is not a drop-in dependency for a Laravel codebase.

  • Build vs. buy for real-time delivery. The core decision this package helps frame is whether to run our own WebSocket tier (Ratchet-style, long-running PHP process) versus buying managed pub/sub (Pusher, Ably, PubNub) or adopting a maintained self-hosted hub (Laravel Reverb, Mercure, Soketi, Centrifugo). Reading this bundle's surface area is a cheap way to price out the "roll our own" option.
  • Roadmap sequencing for a first real-time feature. If the next milestone is chat, live notifications, presence/typing indicators, or a live dashboard, this package is a useful prototype vehicle to validate user value before committing engineering to a production transport.
  • Architecture trade-off: process model. It makes concrete the operational cost of the PHP long-running-process approach — supervisor/systemd units, port management, sticky sessions, TLS termination, zero-downtime restarts, memory leaks in workers. That's a decision input, not just an implementation detail; it often flips teams toward Reverb or Mercure.
  • Stack-alignment check. If we are Symfony-based (or evaluating Symfony), this is a legitimate reference point; if we are Laravel-based, the decision it supports is "adopt a Laravel-native option and treat this as a design reference only."
  • Not a decision this supports: a production dependency commitment. With ~26 stars and zero dependents, there is no adoption signal, no ecosystem gravity, and no evidence of maintenance cadence — that is the decisive input here.

When to Consider This Package

Consider it when:

  • You are on Symfony (not Laravel) and want to see a minimal, readable integration of Ratchet into a framework's DI/console/event system.
  • You need a throwaway spike — a one-to-two-day proof that WebSocket push improves a specific user flow — and you want to skip writing the socket plumbing yourself.
  • Your team is already running a Ratchet server elsewhere and wants a framework-idiomatic wrapper as a reference.
  • You explicitly accept the cost of vendoring or forking: MIT license, small surface area, easy to read and adapt.

Look elsewhere when:

  • You are on Laravel — use Reverb (first-party, Pusher-protocol compatible), or Soketi if you want a standalone Node hub. This bundle will not install cleanly and adapting it costs more than adopting a native path.
  • You need production support, security patching, or a maintenance guarantee. Low stars, zero dependents, and a low composite score mean you are the maintainer the moment you ship it.
  • You need scale-out: horizontal scaling, Redis/NATS fan-out across nodes, backpressure, auth handshakes integrated with your identity provider. Ratchet gives you primitives; this bundle does not solve distributed state.
  • Serverless or shared hosting is a constraint — a persistent PHP process is a non-starter there. Prefer a managed service or HTTP-based alternatives (SSE, long-polling) for low-frequency updates.
  • Your real-time need is one-way broadcast rather than bidirectional — SSE or a managed channel is cheaper to operate and easier to reason about.

How to Pitch It (Stakeholders)

To executives: "We evaluated a community WebSocket component for PHP. It's a small, MIT-licensed wrapper around a well-known library, and it's useful for a short feasibility prototype — but it has negligible adoption (roughly two dozen stars, no downstream projects) and is built for Symfony, not our Laravel stack. I don't recommend it as a foundation. I recommend a two-week prototype using a maintained option (Laravel Reverb or Mercure) to prove whether real-time notifications move our engagement metric. If the prototype shows lift, we scale the same transport into production; if not, we've spent two weeks and avoided building a WebSocket tier we don't need. Our real decision is buy-managed vs. self-host, and this package is evidence for the 'roll our own is more ops work than it looks' side of that ledger."

To engineering: "Treat p2/ratchet-bundle as a reference implementation, not a dependency. With zero dependents and no release cadence, adopting it means we own it. If we want a self-hosted PHP WebSocket tier on Symfony, read it, fork it, or just use ratchet/ratchet directly — the bundle mostly saves wiring. On Laravel, don't fight it: Reverb is the first-party path and speaks the Pusher protocol, so client SDKs and hosting options stay open. Whatever we pick, budget for the operational work this bundle makes visible: supervised workers, restart strategy, TLS/proxy config, and a plan for multi-node fan-out. That ops cost — not the library choice — is the real estimate to bring to the planning meeting."

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.
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource