livewire. ya heard of it?

June 10, 2020

I've made no secret of the fact that I LOVE Livewire. None whatsoever. Let's talk about that.

Livewire is a Laravel framework that lets you write awesome user interfaces without ever having to leave Laravel's codebase. It was dreamed up and created by mastermind/evil genius Caleb Porzio, and my life hasn't been the same since.

Listen, I'll be the first to say, I'm also a lover of Vue.js. That right there is a fantastic JavaScript framework for building ridiculously good user interfaces. However, on about 95% of all of the projects that I work on, having an entirely separate user interface SPA just isn't worth my time. But at the same time, I don't want to have to sacrifice a user's experience for my life as a developer to be easier--that seems pretty backward. I also know that I'm more efficient when writing PHP--it's the first language I took a deep dive into, and, despite its fair share of oddities, I love the language as a whole. Not to mention that I have to spend time context-switching between JavaScript and PHP when I write a separate Vue app and Laravel API, which just loses me time in the long-run.

Then came Livewire.

I'm not going to lie, I was EXCEPTIONALLY skeptical at first. In my mind, there was no way that someone was going to topple the JavaScript giants. There were definitely ways that someone could make Laravel's templating engine (Blade) better, but that probably wouldn't be enough. All throughout the 0.x releases of Livewire, I stayed skeptical. Then, the fateful day came, and Caleb tagged the official 1.0 release of Livewire.

I pounced on it. It was one of the few times in my time programming where I started working with a framework or library, and it all felt right. Especially now, with the new versions of Laravel bringing components to their Blade templating engine, Livewire feels like a natural extension of the Laravel framework. It's at the point where I go ahead and throw Livewire into the mix on just about every Laravel project I create, in case I find a need for it (which I almost always do).

And now, just the other day, Caleb released something that is once again changing the game for me: support for file uploads. As of version 1.2, Livewire has robust and VERY thorough support for uploading files to servers, and to cloud services.

So, have you tried Livewire yet? If you haven't, I can't stress it enough--give it a go. I think you'll be incredibly happy with what you find.

Also, expect to see some more Livewire content in the future. I get the feeling that I won't be able to stop thinking about it. Get in touch with me on Twitter if you're interested in seeing more!

The Links:

Join my mailing list!

No spam, just a weekly newsletter with thoughts, discoveries, and cool new things in the world of programming.