Hacker News new | ask | show | jobs
by akoutmos 1730 days ago
For a lot of the LiveView applications that I write (which is actually quite a few these days), I will usually lean on something like AlpineJS for frontend specific interactions, and my LiveView state is for things that require backend state.

For example, if I have a flag to show/hide a modal to confirm a resource delete, the show/hide flag would live in AlpineJS, while the resource I was deleting would live in the state of my LiveView.

This way, there are no round trips to the server over websocket to toggle the modal. Hopefully that example makes sense :).

1 comments

I'm surprised to see so few mentions of AlpineJS. Personally, PETAL has become my de facto stack.
The main thing that's kept me from using Alpine in my serious projects is that it doesn't work with a strict CSP.
What is PETAL?
Phoenix, Elixir, Tailwind, Alpine, and LiveView.

https://changelog.com/posts/petal-the-end-to-end-web-stack

The PHP equivalent would be the TALL stack (Tailwind, AlpineJS, Laravel and Livewire). Although Livewire just communicates over AJAX. The original Websockets version didn't make it.

I just found out that Livewire was inspired by LiveView.