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.