Skip to content

Poll broadcaster#59011

Draft
mathiasgrimm wants to merge 9 commits into12.xfrom
poll-broadcaster
Draft

Poll broadcaster#59011
mathiasgrimm wants to merge 9 commits into12.xfrom
poll-broadcaster

Conversation

@mathiasgrimm
Copy link
Contributor

@mathiasgrimm mathiasgrimm commented Feb 26, 2026

wip

Today, polling (Livewire/Inertia) and WebSockets take you down completely different paths — we (I) want to merge them into one.

Polling becomes the default entry point: zero installation, easy local setup, and already production-ready. When you need more performance, swap in WebSockets without changing your code.

This matters especially as less technical users join the ecosystem. Even experienced developers might struggle getting Reverb running locally. Polling removes that friction while keeping you on the same API you'll use in production.

One API (the existing broadcasting one), one path forward.

I don't know if WE really want any of this. But thought we could want that :)

Quick Demo

Frontend (Echo): laravel/echo#479

@mathiasgrimm mathiasgrimm marked this pull request as draft February 26, 2026 10:37
@mathiasgrimm mathiasgrimm mentioned this pull request Feb 26, 2026
1 task
$eventId = (string) Str::ulid();
$socket = Arr::pull($payload, 'socket');

$this->cache->put($this->eventKey($eventId), [
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach here uses a single array for event IDs while storing payloads individually, which I expected to be more efficient.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant