htmx 4.0.0: переход на fetch(), явное наследование атрибутов и морфинг-свопы

Вышла htmx 4.0.0 — результат восьми месяцев работы. Внутри библиотека переведена с XMLHttpRequest на fetch(), что открыло путь к потоковой передаче HTML и новым расширениям. Главные изменения для пользователей: наследование атрибутов теперь явное (нужно добавлять суффикс :inherited), события переименованы по единому стандарту, а история больше не использует localStorage. Из новых возможностей — морфинг-свопы и тег <hx-partial>. Для облегчения миграции предоставлен инструмент проверки кода.

В htmx 4 атрибуты не наследуются, если вы явно не укажете это, добавив :inherited после имени атрибута.
  1. dec0dedab0de

    Мне очень нравится htmx, и intercooler.js до него. Прошло уже некоторое время с тех пор, как я пытался убедить коллегу использовать его, возможно, пора попробовать снова. В любом случае не могу дождаться, чтобы попробовать новую версию.

    Полное раскрытие: я генеральный директор HTMX

  2. nzoschke

    Поздравляю и спасибо! htmx приносит мне радость.

    Почти каждый эксперимент, который я сейчас создаю, начинается с Go, htmx и SQLite, чтобы всё было просто и быстро, но при этом отзывчиво.

    Я добавил ещё несколько мыслей об этом здесь:

    https://housecat.com/blog/the-hugs-stack-hypermedia-unix-go-...

  3. threesmegiste

    Продуманная, чистая и полезная библиотека, которая не была создана для продвижения по корпоративной лестнице. Она росла органично. Думаю, она стала криком облегчения для тех, кого раздражает ненужная сложность, что также повысило её узнаваемость. Она послужила отправной точкой и для таких вещей, как Datastar. Я считаю, что она принесла глоток свежего воздуха в мир фронтенда.

  4. james2doyle

    > `hx-alpine-compat` — сглаживает проблемы совместимости между htmx и Alpine.js

    Я изучал это, когда пробовал HTMX 4 в проекте в начале этого года. На самом деле я обнаружил, что https://alpine-ajax.js.org/ меньше, чем HTMX, и при этом предоставляет все функции, которые мне были нужны. Это один из одобренных проектов, на которые они ссылаются, так что я чувствовал себя уверенно, используя его

  5. rednb

    Возможно, это противоречивое мнение, но как человек, хорошо разбирающийся в .NET API бэкендах + Angular на фронтенде, я обнаружил, что HTMX усложнил задачу, так как потребовал от меня вернуться к смешиванию презентационных аспектов с бизнес-логикой и аспектами данных (по сути, заставить бэкенд создавать пользовательский интерфейс, что и является всей сутью HTMX).

    Это не критика, но я подозреваю, что людям, которым нравится HTMX, либо предпочитают старомодный серверный рендеринг, либо являются пользователями React.

    Просто делюсь своим опытом, потому что HTMX — абсолютный любимец Hacker News.

    Поскольку я в основном разрабатываю настоящие SPA, я обнаружил, что это сложнее, чем просто использовать TypeScript, если вы создаёте что-то нетривиальное, так как управление состоянием на сервере совсем не весело.

    На мой взгляд, если вы довольны использованием Angular, вы обнаружите, что HTMX — это шаг назад с точки зрения опыта разработчика. Не могу говорить о React, но поскольку это не полноценный стек, в отличие от Angular, я понимаю, почему многие считают, что им лучше перенести вещи на сервер, чем возиться с 15 сторонними библиотеками. Мои два цента

  6. alkonaut

    Как генеральный директор HTMX, я нахожу тревожным, что у нас больше генеральных директоров, чем пользователей.

  7. bluesnowmonkey

    Я обнаружил, что Htmx отлично сочетается с разработкой, управляемой агентами. Он позволяет тестировать пользовательский интерфейс от начала до конца без полноценного безголового браузера, просто изучая HTML, а это значит, что UI-тесты дёшевы и быстры, и их может быть много. А агенты-кодеры настолько хороши, насколько хорошее у вас покрытие тестами. Так что с Htmx они отличные.

  8. Baguette5242

    Как генеральный директор HTMX, я очень горжусь работой, проделанной командой.

Ещё за этот день

2026-08-28