News for hackers. Stuff that matters.

calebporzio

Re:Alpine.js on Friday January 13, 2023 @08:31AM (#34367386)
Creator of Alpine here! Those components are the reason I can work on open source full-time. If I didn't charge for anything, I wouldn't be able to pour as much effort into these tools.
Re: on Tuesday November 01, 2022 @03:31PM (#33426249)
Reflections of a web creator
Re:I Just Hit $100k/Yr on GitHub Sponsors (2020) on Wednesday April 20, 2022 @06:58PM (#31104141)
I make more money than I did when I wrote the article ;)
Re:Safari tries to fill username on Friday May 28, 2021 @12:05PM (#27317080)
Livewire's creator here. This problem is so bonkers and such a pain to deal with.

For your amusement. Here's the code that was SUPPOSED to fix the bug: https://github.com/livewire/livewire/blob/0b3feda46a9dd6ad19...

https://github.com/livewire/livewire/blob/0b3feda46a9dd6ad19...

And here's the podcast I recorded a while back on what a pain it is: https://laravel-livewire.com/podcasts/ep65-safari-sucks-here...

Re:I Just Hit $100k/year On GitHub Sponsors on Tuesday June 23, 2020 @03:17PM (#23618852)
I started the journey out (sorta) this way. It's a hard life.
Re:I Just Hit $100k/year On GitHub Sponsors on Tuesday June 23, 2020 @03:17PM (#23618835)
This exactly
Hi, creator of Alpine here.

Alpine comes out of the server-rendered-app (Laravel/Rails/Django) and static site context. It's important to recognize that.

To me, Alpine fills a hole in between vanilla JS (or jQuery) and large v-dom frameworks like Vue/React.

I personally think the complexity/overhead of Vue/React/Etc. doesn't justify its value in a lot of cases for me. Often, I'm adding simple interactions to server-rendered pages. Things like dropdowns, modals, dynamic inputs, other reactive doo-dads...

By using something like Alpine, I get to keep the data-driven reactivity and declarative template expressions of VueJs, but without all the overhead. (and without a virtual-dom)

I thought Stimulus would be the framework for me, but I personally felt I was doing too many manual DOM-manipulations and my code felt more imperative than I like.

In my opinion, Alpine is unique in these ways:

- You can use it without maintaining a separate JS file or <script> tag (although you can easily break code out into separate files and such if you need to)

- It doesn't use a virtual-dom at all and uses MutationObserver to react to DOM manipulations from outside JS (something like Turbolinks, third-party libs, or your own hand-written JS). This makes it very resilient. It won't crumble if you touch the real DOM.

- It's lightweight. It's under 5kb g-zipped.

- It has a really nice API for listening for and dispatching native browser Event/CustomEvents rather than using its own event system. This makes it a really powerful tool for interacting with third-party libs.

It's not a tool for everyone. It's not a Vue or React killer. (although it might be a Stimulus killer lol)

If it speaks to you, great. You and I are similar.

If not, understandable too. Different tools for different contexts.

Thanks everyone for chiming in!

Re:Project X – Like Tailwind for JavaScript on Saturday November 30, 2019 @10:08PM (#21673568)
Project x would replace stimulus. But you would still use turbolinks. It supports it out of the box.