Laravel Livewire v1.0 is Here

News

February 27th, 2020

Laravel Livewire v1.0 is Here

Laravel Livewire by Caleb Porzio has reached v1.0 today. Livewire is “a full-stack framework for Laravel that makes building dynamic interfaces simple, without leaving the comfort of Laravel.”

This release adds the following:

  • Turbolinks integration
  • Alpine JS integration
  • Support for wire:model listening for “input” events dispatched by AlpineJS: $dispatch(‘input’, ‘foo’)
  • Support for wire:custom-event="foo" receiving params from an AlpineJS dispatch: $dispatch('custom-event', 'bar'). (In public function foo($param), $param will be 'bar')
  • Livewire custom-tag syntax (similar to Laravel 7 Blade component tag syntax) (only available in Laravel 7):

If you’re unfamiliar with Livewire, the homepage has an overview that gives you the gist of what it does:

  • Livewire renders the initial component output with the page (like a Blade include), this way it’s SEO friendly.
  • When an interaction occurs, Livewire makes an AJAX request to the server with the updated data.
  • The server re-renders the component and responds with the new HTML.
  • Livewire then intelligently mutates DOM according to the things that changed.

Be sure to check out the quickstart documentation, which will help you build your first component. Here’s the gist of what a Livewire component looks like from the Quickstart guide:

use Livewire\Component;
 
class Counter extends Component
{
public $count = 0;
 
public function increment()
{
$this->count++;
}
 
public function decrement()
{
$this->count--;
}
 
public function render()
{
return view('livewire.counter');
}
}

With the accompanying Blade template:

<div style="text-align: center">
<button wire:click="increment">+</button>
<h1>{{ $count }}</h1>
<button wire:click="decrement">-</button>
</div>

Today Caleb also gave a talk at Laracon Online along with the project used during his talk. If you want to see Caleb’s Livewire talk, you can still purchase Laracon Online 2020 tickets for $25, and the videos will be available online soon.

You can get upgrade instructions and details about the release from Release v1.0.0 on GitHub.

Filed in:

Paul Redmond

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.