finds.dev← search

// the find

bigskysoftware/htmx

★ 48,186 · JavaScript · NOASSERTION · updated Jun 2026

</> htmx - high power tools for HTML

htmx lets you add AJAX, WebSockets, and SSE to HTML elements via attributes, avoiding the need for a JavaScript framework for server-rendered apps. At 14kb gzipped with zero dependencies, it's a serious option for teams using Django, Rails, Go templates, or anything that renders HTML on the server. Not for SPAs — it's specifically for the HATEOAS crowd.

14kb, zero dependencies, no build step required — you can drop a script tag and be done. The attribute-based model keeps behavior local to the markup, which is actually easier to debug than hunting through JS files. Extension system is genuinely useful: SSE, WebSockets, morphdom diffing, and response-target routing are all first-class. The test suite covers every attribute individually, and the regression file suggests they take backwards compatibility seriously.

Complex client-side state (shopping carts, multi-step wizards, real-time collaborative editing) is painful — you end up fighting the model or mixing in Alpine.js, which defeats some of the simplicity argument. The out-of-band swap feature (hx-swap-oob) works but gets messy fast in non-trivial UIs. CVE-2026-3682-1 is listed in the docs, which means there's been at least one security issue in the HTML parsing path — worth reading before you start proxying untrusted server responses through it. History management with hx-push-url has enough manual tests to suggest it's fragile across browsers.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →