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

Thruway Laravel Package

voryx/thruway

Thruway is a PHP implementation of the WAMP v2 protocol, providing a router and client built on ReactPHP. It enables WebSocket-based pub/sub and RPC for real-time PHP applications, with authentication and flexible transport support.

Deep Wiki
Context7

PHP Client and Router Library for Autobahn and WAMP (Web Application Messaging Protocol) for Real-Time Application Messaging

Frequently asked questions about Thruway
What is Thruway and what does it do?
Thruway is a PHP implementation of the WAMP v2 protocol that ships both a client and a router (broker and dealer) built on Ratchet and ReactPHP. It gives PHP applications brokered pub/sub and routed RPC over WebSockets in one protocol, and interoperates with JavaScript, Python, and other WAMP clients such as AutobahnJS.
Is voryx/thruway a Laravel package?
No. Thruway is framework-agnostic and ships no Laravel service provider, config publishing, or facade. In a Laravel app you integrate it by hand: bind the ReactPHP event loop and a Thruway client as singletons in a provider, and run the router as a separate supervised process.
How do I install Thruway with Composer?
Install it with composer require voryx/thruway and confirm the dependency graph resolves against your supported PHP matrix before committing. There is no Laravel auto-discovery, so you also need to write the provider bindings and a long-running artisan command for the router yourself.
Does Thruway support Laravel 10 or 11 and PHP 8.2/8.3?
There is no official Laravel version support because it is not a Laravel package. The last release was 2022-02-18, so PHP 8.2/8.3 compatibility and ReactPHP v1.x pinning must be verified before adoption. Treat it as adopt-and-vendor rather than adopt-and-track.
How do I run a Thruway router in production with Laravel?
Run the Thruway router as a dedicated long-lived process under Supervisor or systemd, never inside an FPM worker. Laravel request paths should enqueue a job or use a short-lived client to publish, while separate workers subscribe to inbound topics and dispatch into Laravel's queue. Someone must own and be on-call for that router process in production.
How does authentication work with Thruway and a Laravel guard?
Thruway has pluggable authentication and session providers, so you can bridge Laravel's guard into WAMP's ticket or CRAC challenge-response flow. Channel-level and URI-level authorization, including tenant scoping, has to be authored from scratch. Plan for that work and for the unfamiliar WAMP surface of realms, sessions, roles, and URI namespacing.
Can I use Thruway for real-time notifications instead of Laravel Reverb?
Possibly, but it overlaps heavily with Laravel Reverb, Echo, Soketi, and Centrifugo, which are first-party or actively maintained. Thruway's real differentiator is RPC over WebSocket with caller/callee routing and progressive or cancellable results, which Echo does not model. If you only need fan-out notifications, Reverb is the better architectural fit.
Does Thruway provide message durability or delivery guarantees?
WAMP pub/sub is fire-and-forget, and Thruway provides no message durability or persistence. Delivery is best-effort, so if the business needs at-least-once guarantees you must layer a queue, outbox, or durable broker around it. Decide the actual delivery requirement before adopting.
Can Thruway scale horizontally or cluster?
Thruway's router is a single process with no built-in clustering story, so horizontal scaling is custom work you own. If you need multiple router nodes or high availability, evaluate a dedicated broker or a different real-time stack. Also note the router becomes internet-facing for browser WebSocket clients, so TLS, origin policy, and rate limiting are yours.
Is Thruway still maintained, and what are the alternatives?
Thruway's last release was in February 2022 and there are no signs of active stewardship, so assume you will fork and maintain it. For Laravel real-time work, compare Reverb, Soketi, and Centrifugo first. Thruway makes sense mainly when an existing WAMP peer such as Crossbar or AutobahnJS forces protocol alignment.
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