Laravel Reverb adalah WebSocket server first-party untuk Laravel yang dirilis di Laravel 11. Kencang, scalable, dan terintegrasi langsung dengan Laravel Broadcasting.
Kenapa Reverb?
Sebelum Reverb, developer Laravel harus mengandalkan Pusher (third-party) atau laravel-websockets (soketi). Reverb hadir sebagai solusi native yang optimized untuk ekosistem Laravel.
Instalasi
composer require laravel/reverb
php artisan reverb:install
Reverb menggunakan protocol WebSocket standar dan kompatibel dengan Laravel Echo di frontend.
Konfigurasi
File konfigurasi ada di config/reverb.php. Kamu bisa mengatur port, aplikasi ID, dan key:
REVERB_APP_ID=my-app-id
REVERB_APP_KEY=my-app-key
REVERB_APP_SECRET=my-app-secret
REVERB_HOST=localhost
REVERB_PORT=8080
Broadcasting Events
Dengan Reverb, broadcasting event semudah membuat event class:
php artisan make:event OrderShipped
Event class implement ShouldBroadcast, lalu Reverb akan mengirimkannya ke semua client yang subscribe ke channel tersebut.
Frontend dengan Laravel Echo
Di frontend, gunakan Laravel Echo untuk mendengarkan event:
Echo.channel('orders')
.listen('OrderShipped', (e) => {
console.log('Order dikirim!', e.order);
});
Kesimpulan
Reverb membawa kemampuan real-time ke Laravel tanpa ketergantungan third-party. Installasi mudah, performa tinggi, dan terintegrasi penuh dengan ekosistem Laravel.