executable/laravel-livewire-beacon

Beacon enables websocket communication for Livewire.

0.2.0 2024-07-06 07:50 UTC

This package is auto-updated.

Last update: 2024-08-26 03:03:26 UTC


README

Warning This project is currently experimental and should only be used in production at your own risk.

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Livewire Beacon enables websocket communication for Livewire dramatically improving user experience and enabling more features.

Without Livewire Beacon

Slow or spotty connections have a degraded user-experience while Livewire waits for a full server round-trip for every UI interaction.

Livewire - Throttled Slow 3G

With Livewire Beacon

Even when throttled, the persistent connection over websockets makes for much faster response times, creating a better user experience.

Livewire Beacon - Throttled Slow 3G

Requirements

This package provides a thin layer that sits on top of Laravel Livewire and Laravel Reverb as the core requirements.

  • Laravel Livewire installed (docs)
  • Laravel Reverb installed (docs)
  • Laravel Echo installed and served on frontend (docs)

Installation

You can install the package via composer:

composer require executable/laravel-livewire-beacon

Next, edit your app's layout to include the Beacon javascript assets. This is best done by adding the Blade directive @livewireBeaconScripts just before the closing body tag.

<!-- resources/views/layouts/app.blade.php -->

    @livewireBeaconScripts
</body>

</html>

Configuration

Livewire Beacon is designed to work seamlessly without further configuration.

If you'd like to modify some internal behaviour of this package, you can publish the config file with:

php artisan vendor:publish --tag="laravel-livewire-beacon-config"

Usage

That's it! Continue using Livewire as you would normally, and enjoy significant performance improvements.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.