Livewireをほんの少しだけ触ってみた

昨日、社のとある勉強会でHotwireの話題があがった。僕はそれがどういうものなのかよく分かっていなかったのだが、他の参加者から「PHPでも似たようなやつあったような?」的なことを教えてもらった。どうやらLivewireがそれにあたるものらしい。せっかくなので、少し調べてみようと思う。

Livewireとは

github.com

JSを書かずにSPAを作ることのできるLaravel用のライブラリ。

サーバーからレンダリングしたHTMLを送り、ブラウザでインタラクションがあれば、LivewireがAjaxリクエストで再レンダリングしたHTMLを受け取り、DOMを差し替える、的な動きをしてるっぽい。

試してみたこと

とりあえず公式ドキュメントのクイックスタートを試しつつ改造してみたり、ライブラリの内部処理をさらっと眺めたりした。

感想

さすがにまだほんの少し触っただけなので大したことは言えない状態だけど、Livewire(やHotwire)がどのようなアプローチで作られたものなのかは少し理解できた気がする。

この記事の技術的な情報量はほぼ無なので参考にはならないだろうけど、JSよりPHPやLaravelが好きすぎる!!1という方は公式ドキュメントなどを見ながら一度触ってみると良さそう。