htmx VS Alpine.js

Compare htmx vs Alpine.js and see what are their differences.

htmx

</> htmx - high power tools for HTML (by bigskysoftware)

Alpine.js

A rugged, minimal framework for composing JavaScript behavior in your markup. (by alpinejs)
Our great sponsors
  • Syncfusion - Build stunning web applications quickly using Syncfusion JavaScript UI controls.
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
htmx Alpine.js
120 87
4,668 18,761
6.7% 3.1%
9.4 9.6
3 days ago 4 days ago
JavaScript HTML
BSD 2-clause "Simplified" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

htmx

Posts with mentions or reviews of htmx. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-16.
  • The JavaScript ecosystem is a hot mess and so is software development in general
    news.ycombinator.com | 2021-10-16
    I work on a dependency-free, build-less library called htmx:

    https://htmx.org

    It's more an extension of HTML than a JS library. It might be a good way to gently introduce more dynamic behavior without blowing out the complexity of your site.

  • Should I ditch using Django
    reddit.com/r/startups | 2021-10-16
    As an additional advice, I would check the Django subreddit and ask what are they doing for their front-end needs (e.g. check this one) -> you don't have to use JS for front-end (e.g. check htmx, unicorn, etc).
  • The Decline of Django
    news.ycombinator.com | 2021-10-15
    I think the case for server-side HTML rendering has never been stronger, and of all Django projects I work on, the ones I enjoy most are those that never got on the SPA bandwagon. From both a developer and user point of view I find them much faster and less painful. There are many cases where you really, really don't need the massive amount of extra complexity involved in designing APIs, adding JS frameworks etc.

    When you need a bit of extra UI goodness, [htmx](https://htmx.org/) is a fantastic solution, and you can still use SPA-type approaches for things that need them.

    You can also benefit from massively faster (and more reliable) functional testing when you are mostly standard HTML - see [django-functest](https://github.com/django-functest/django-functest/) for an example of this.

  • Has anyone written a small framework to support HTMX?
    reddit.com/r/golang | 2021-10-14
    See: https://htmx.org/
  • How Laravel Livewire works (a deep dive)
    news.ycombinator.com | 2021-10-12
    I recently started using htmx (https://htmx.org/) in combination with Django and have become a firm believer of sending HTML 'over the wire' instead of JSON structures that then get used client side.
  • I built a modern website in 2021
    news.ycombinator.com | 2021-10-10
    Curious - why aren’t simpler frameworks like htmx (https://htmx.org/) more common or
  • Ask HN: Why aren’t frameworks like htmx more popular?
    news.ycombinator.com | 2021-10-10
    shifting to htmx [1] or related “simpler” libraries?

    [1] https://htmx.org/

  • The Shocking Immaturity of JavaScript
    news.ycombinator.com | 2021-10-10
    Complexity and instability in the JS ecosystem is a hot button for me, so it's hard not to be drawn into vehement agreement.

    I've been doing a little work recently with htmx[0] and it's a breath of fresh air. But then, I'm at the point in my career where "cool new tech" is much less interesting for its own sake than it used to be when I was younger. I'm drawn for more to elegant, understandable, productive simplicity these days.

    I think that hints at the reason we have these endless debates - not just about JS but about $(your-favourite-tech). Software development is a socio-technical endeavour. We put all the focus on the technical part, and by comparison, rarely consider the social aspect.

    DHH is one of the few I've heard actually refer to this, on the corecursive podcast [1]. In discussing static typing vs dynamic, his point is the latter suits his brain. But that he understands and accepts static typing suits others, and that's fine.

    So I get that, for some, the JS ecosystem is dynamic and interesting; stimulating; exhilarating even. For others, it's an unstable quicksand that gets in the way of doing something useful.

    [0]: https://htmx.org/

    [1]: https://corecursive.com/045-david-heinemeier-hansson-softwar...

  • Action without refreshing the page?
    reddit.com/r/flask | 2021-10-04
  • Do you recommend learning Angular or React for the front end?
    reddit.com/r/java | 2021-10-02
    I have personally found a combination of htmx and Alpine.js to be very effective for my projects. Here's a demo project for using Spring Boot, Thymeleaf and htmx together. Here's a video on using Spring Boot w/htmx. That said, there is currently no job market for this kind of thing, although (crossed-fingers) that will change over the next few years.

Alpine.js

Posts with mentions or reviews of Alpine.js. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-13.
  • What is your favorite frontend web framework?
    reddit.com/r/compsci | 2021-10-19
  • Building a dropdown menu using Alpine.js
    dev.to | 2021-10-13
    AlpineJS is a small JavaScript framework for composing behavior directly in HTML markup. In this tutorial I’ll show you how the framework can be used to build a dropdown menu component. If you’ve never worked with Alpine before this will serve as a simple introduction to the framework.
  • Showing GUIs from Shell Scripts
    news.ycombinator.com | 2021-10-13
  • Carregamento lento com scroll horizontal
    dev.to | 2021-10-12
  • Do you recommend learning Angular or React for the front end?
    reddit.com/r/java | 2021-10-02
    I have personally found a combination of htmx and Alpine.js to be very effective for my projects. Here's a demo project for using Spring Boot, Thymeleaf and htmx together. Here's a video on using Spring Boot w/htmx. That said, there is currently no job market for this kind of thing, although (crossed-fingers) that will change over the next few years.
  • Help with Modal
    reddit.com/r/laravel | 2021-10-01
    I would use AlpineJS to display the modal, and then within the modal I'd build the form as a Livewire component.
  • We Got to LiveView
    news.ycombinator.com | 2021-09-22
  • Is there a library like Preact for React, but for Vue?
    reddit.com/r/vuejs | 2021-09-15
    There is https://alpinejs.dev/
  • POLL: How would you feel if the Options API was removed from Vue (placed in an separate library like Class Components are), so it would only ship with Composition API
    reddit.com/r/vuejs | 2021-09-03
    Alpine.js
  • vue is pretty rad
    reddit.com/r/vuejs | 2021-09-03
    If you really just want some JS in your HTML, and not build a complete SPA, take a look at petite vue or alpine js.

What are some alternatives?

When comparing htmx and Alpine.js you can also consider the following projects:

Svelte - Cybernetically enhanced web apps

Stimulus - A modest JavaScript framework for the HTML you already have [Moved to: https://github.com/hotwired/stimulus]

React - A declarative, efficient, and flexible JavaScript library for building user interfaces.

Mithril.js - A JavaScript Framework for Building Brilliant Applications

petite-vue - 6kb subset of Vue optimized for progressive enhancement

jQuery - jQuery JavaScript Library

react-snap - 👻 Zero-configuration framework-agnostic static prerendering for SPAs

Turbolinks - Turbolinks makes navigating your web application faster

knockout - Knockout makes it easier to create rich, responsive UIs with JavaScript

feathers - A framework for real-time applications and REST APIs with JavaScript and TypeScript

SvelteKit - The fastest way to build Svelte apps

django-unicorn - The magical reactive component framework for Django ✨