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

Laravel Sse Laravel Package

sinemacula/laravel-sse

A Laravel package for Server-Sent Events (SSE) that makes it easy to stream real-time updates from your app to browser clients. Simplify live notifications, progress updates, and event broadcasting with minimal setup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

Real-time UX without a WebSocket tier. This package provides first-class Server-Sent Events responses in Laravel, which lets you ship one-way live updates (notifications, job progress, dashboards, log tails, AI token streaming) over plain HTTP. The product decision it unlocks is "do we need bidirectional real-time or just server→client push?" — if the answer is push-only, SSE removes the need to stand up and operate a WebSocket service (Pusher/Ably/Reverb), which is typically a multi-week build plus ongoing infra and vendor cost.

Build vs. buy vs. adopt. The alternative is hand-rolling text/event-stream responses in a controller — doable in ~50 lines, but the fiddly parts (correct headers, data:/event:/id:/retry: framing, multi-line payload chunking, proxy buffering pitfalls, connection teardown) are exactly where homegrown implementations rot. This package converts that into a supported dependency, which is a good trade when SSE is incidental to your product rather than core.

Roadmap signal: Laravel 13 support (v1.1.0). This is the release's only change, and for a PM it is the most decision-relevant kind of release: it tells you the maintainer is tracking framework majors and intends the package to survive your next Laravel upgrade. Concretely it means (a) the package is viable for teams planning or running a Laravel 13 upgrade in the next 6–12 months, and (b) you can put it on a roadmap that spans a framework upgrade without scheduling a replacement project. It also gives you a support-window data point when comparing against alternatives that lag behind new Laravel majors.

Use cases to evaluate against your backlog: live status/progress for long-running jobs (queues, exports, imports), in-app notification bells without polling, streaming LLM/completion output, ops dashboards and tail views, and cheap "poll replacement" for read-only feeds. Notably not chat, collaborative editing, or anything requiring client→server messages — those remain WebSocket territory.

Scope check. The release contains no new API surface, no deprecations, and no breaking changes, so it does not change the functional fit of the package — only its longevity. Do not let it reprioritize feature work; treat it as a dependency-health update.

When to Consider This Package

Adopt when most of these hold:

  • Your real-time need is one-way server→client and tolerant of HTTP-level constraints (per-connection server process/worker occupancy, browser 6-connection-per-domain limits under HTTP/1.1, proxy/CDN buffering that must be disabled).
  • You are on, or imminently moving to, a Laravel version this package supports — v1.1.0 explicitly adds Laravel 13, which widens the viable window; confirm it also covers the version you run today before committing.
  • You want SSE idiomatic to Laravel's response layer rather than a standalone streaming library, so it composes with middleware, auth, policies, and existing controller patterns.
  • Your deployment can hold long-lived requests open (check PHP-FPM worker counts, max_execution_time, load balancer idle timeouts, and whether you need X-Accel-Buffering: no in front of nginx).
  • The team's appetite for owning a small dependency is higher than its appetite for owning bespoke streaming code.

Look elsewhere when:

  • You need bidirectional communication, presence, or fan-out to many channels → WebSockets (Laravel Reverb / Pusher) or a managed service.
  • You need guaranteed delivery, replay, or multi-consumer semantics → a real message bus, not an HTTP stream.
  • You are scaling to very high concurrent connection counts on traditional PHP-FPM; SSE holds a worker per connection, so an async runtime (Octane/Swoole/RoadRunner) or a different transport may be the honest answer.
  • The package's maintained surface is thin relative to your risk tolerance — a single-maintainer, narrow-scope package with one commit per framework major is fine for incidental use and a liability for a core, revenue-path feature. In that case, plan a thin internal adapter around it so you can swap implementations.
  • Licence and support terms don't match your procurement bar — verify before it lands in a customer-facing path.

How to Pitch It (Stakeholders)

To executives: We're evaluating a small open-source Laravel add-on that lets our web app push live updates to users over ordinary HTTP instead of standing up a separate real-time messaging service. That substitutes a recurring vendor/infra line item and a multi-week build with a low-cost dependency. Its new v1.1.0 release adds support for the next major Laravel version, which is the signal we care about: the maintainer is keeping pace with the framework, so adopting it won't create an upgrade trap a year from now. Cost is minimal; the main commitment is engineering discipline around long-lived connections in our hosting setup.

To engineering: sinemacula/laravel-sse gives us SSE responses in Laravel's response pipeline. v1.1.0 is a compatibility release — Laravel 13 support only, no API changes, no deprecations, no breaking changes — so it's a safe minor bump with no migration work. Before we standardize on it, we should validate: (1) it supports our current Laravel version, not just 13; (2) our web server and any CDN/proxy are configured to disable response buffering and allow long idle connections; (3) our FPM worker pool and timeouts can absorb the expected concurrent stream count, or we run it under Octane; (4) we wrap it behind a thin internal interface so the dependency stays replaceable. If those check out, it's a reasonable build-vs-adopt trade for push-only features.

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.
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
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console