News

Laravel Livewire v1.0 is Here

Published
Laravel Livewire v1.0 is Here image

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.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article