Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

marikkil's avatar

Livewire or Vue?

Hello friends, I love laravel and I want to use all its advantages. But I don't like frontend, now I want to make a project for myself and I don't know what to choose, please help.

1 like
6 replies
tisuchi's avatar

@marikkil If you use it for personal projects without specific requirements, I prefer Livewire.

Why?

  • No JavaScript needed
  • Easy to use with Laravel
  • Great for forms and admin panels, e.g. FilamentPHP
  • SEO Friendly
  • Less learning curve.
2 likes
vincent15000's avatar
Level 63

It depends on your needs.

In most cases, Livewire is a great choice. But if you need more reactivity and less requests to the backend, perhaps VueJS is a good choice.

It also depends on what you really want.

I have worked on several personal projects with a version coded with Livewire and antoher version coded with VueJS.

It's perhaps weird, but when I code a project with Livewire, I want to do the same with VueJS. And when I code a project with VueJS, I want to do it with Livewire.

I think that both technologies are equivalent for small data management projects.

Around one year ago, I had to choose between Livewire and VueJS for a client. I would have loved coding it with Livewire, but I has a constraint : in the future, the project will perhaps be opened to external applications, so I needed to code it in API mode. Then the unique choice between Livewire and VueJS was VueJS.

When you have to choose for a technology, always think about all what could become your application.

1 like
bvfi-dev's avatar

Just as a precaution, If you're unfamiliar with JS and Synchronisation/Asynchronisation in the frontend, you're gonna have a bad time with Livewire. Especially when nesting components and having events, it can become a cluster-f## very fast and soon you lose whole page functionalities and get thrown error stacks that are impossible to trace back to the source. Especially when trying to integrate a Livewire Component with 3rd party/outside libraries/elements that also have their own events. I have broken at least 3 keyboards out of frustration, when trying to integrate the Trix Editor for example, because the "trix-initialize" event wouldnt fire consistently, and because just putting the trix editor by itsself in its own Livewire component is enough to throw an error, but the page doesnt break, everything works, it just throws and error.

Livewire demands a lot of experience in order to learn how to handle it and sometimes you need to be very specific to its requirements when coding. You cant miss or forget a single documentation paragraph, or else you're gonna have a bad time. The documentation is written very "Straight to the point" without a lot of details or explanations for a lot of things, which you will likely have to figure out on your own. If the JS error stack traces were more detailed, I think everything would be fine, but sometimes you just get a generic JS Livewire error that doesnt really help you at all, its just there to...Exist and notify you that the component has broken, basically to give you a bad time. Since you dont like frontend and wont be focusing much on it, you're probably gonna have a great time. And the LaraCasts are amazing, god bless every single instructor, but I mostly learned Livewire on my own and it was nothing but frustration at the beginning. You learn to love it after you understand the beauty behind it, kind of like meditation, at first its hard to sit still, but once you find the peace it brings its invaluable. Except the times when it throws untraceable JS error stack traces

2 likes
bvfi-dev's avatar

@vincent15000 I love it more than I hate it :D It was the reverse at the beginning, but now I learned that I am not the master of Livewire, but that Livewire is the master of me, I need to serve it, instead of Livewire serving me.

2 likes

Please or to participate in this conversation.