Logo do site

htmx 4.0 chega com reescrita baseada em fetch, morphing swaps nativos e herança explícita de atributos

Publicado em: 18/09/2026 20:08
Última atualização: 18/09/2026 20:08
tecnologia
AI
software

A equipe do htmx lançou a versão 4.0.0 da biblioteca de hipermidia, a primeira grande atualização desde o 2.0, lançado em 2024. Foram oito meses de trabalho e a versão 3 foi simplesmente pulada. O criador Carson Gross, que havia prometido que nunca existiria um htmx 3, resumiu o salto para a InfoWorld em uma palavra: "Oops."

O que mudou

A biblioteca trocou o antigo XMLHttpRequest pela API fetch(), o que libera streaming nativo mantendo o script em cerca de 14KB. Para a maioria dos desenvolvedores, os atributos hx-get e hx-post continuam funcionando como antes — mas a mudança viabiliza dois recursos que a equipe mais destaca:

  • Morphing swaps nativos, com o idiomorph, que preservam o estado do DOM, como o foco em um campo de input, durante atualizações;
  • hx-partial, uma tag que permite uma única resposta atualizar vários alvos de forma limpa, uma versão mais elegante dos out of band swaps.

A herança de atributos agora é explícita: atributos de elementos pais só chegam aos filhos quando marcados com o sufixo :inherited.

<div hx-confirm:inherited="Are you sure?">
 <button hx-delete="/item/1">Delete</button>
</div>

Um texto detalhado no DEV Community alerta que essa é a pegadinha a se observar: um atributo hx-headers passando um token CSRF para elementos filhos simplesmente para de funcionar sem o :inherited, e o servidor começa a rejeitar requisições com erro 403 sem que nada pareça quebrado.

Os nomes de eventos também foram padronizados no formato htmx:phase:action, então htmx:afterRequest virou htmx:after:request. Já o histórico não faz mais snapshot do DOM no localStorage, e sim refaz o fetch das páginas — fazendo scripts de terceiros simplesmente funcionarem.

Repercussão

Uma thread no Hacker News passou dos 700 pontos, com desenvolvedores elogiando a stack de Go, SQLite e htmx e o quão bem assistentes de IA lidam com ela — um deles comentou que o Claude "entende e faz bem". O post de lançamento no r/htmx passou de 300 upvotes.

Do outro lado, um desenvolvedor de .NET e Angular argumentou que o htmx força misturar apresentação com lógica de negócio, e outro concordou, dizendo que sua equipe está voltando para React.

Migração

O htmx 4.0 sai sob a tag next do npm, e não latest, então ninguém com link de CDN sem versão é atualizado à força — e a série 2.x segue com suporte indefinido. A equipe oferece um verificador de linha de comando que aponta problemas de herança, atributos renomeados e eventos antigos:

npx htmx.org@4.0.0 upgrade-check -- ./templates

Além das mudanças de herança, há um novo timeout de 60 segundos e diversos atributos renomeados, como hx-disable virando hx-ignore. São mudanças que pedem cuidado. O guia completo What's New in htmx 4 está disponível, junto com arquivos de skills para upgrades assistidos por LLM.

Sobre a biblioteca

O htmx é uma biblioteca open source que adiciona AJAX, transições CSS, WebSockets e server-sent events diretamente ao HTML por meio de atributos, permitindo criar interfaces modernas com o mínimo de JavaScript. Segue como um dos principais nomes do movimento de hipermidia, popular em backends Django, Go e Rails, onde HTML renderizado no servidor se encontra com baixa complexidade no lado do cliente.

Fonte: baseado na análise de Daniel Curtis, publicada pela InfoQ. Acesse a matéria original.

Conecte-se

Acompanhe meu conteúdo nas redes sociais ou entre em contato por e-mail.