← Усі статті

HTML-елемент `<install>`: встановлення PWA без JavaScript

Chrome і Edge тестують декларативну кнопку встановлення вебзастосунку — простіше, ніж лише маніфест і власний скрипт.

HTML-елемент `<install>`: встановлення PWA без JavaScript
Зміст

Коротко

У Chrome і Edge випробовують HTML-елемент <install> — декларативну кнопку «встановити застосунок» для PWA без обов'язкового користувацького JavaScript. У випуску Frontend Focus #741 його порівнюють із звичним сценарієм через маніфест, service worker і власний UI встановлення.

Що сталося

Сьогодні встановлення PWA зазвичай виглядає так: публікуєте Web App Manifest, реєструєте service worker, малюєте свою кнопку й ловите подію beforeinstallprompt там, де браузер її ще віддає. На кожному кроці щось може розійтися — scope worker'а, іконки в маніфесті, умови показу банера.

Експериментальний <install> має звузити UX-шар до семантичної розмітки: браузер сам малює й обробляє встановлення, а розробник не тягне окремий React-компонент лише заради однієї операції.

У тому ж дайджесті — широкий зріз платформи. Safari 26.5 приніс псевдоклас :open, доопрацювання функції random() в CSS, правки anchor positioning і Origin API. Окремо вийшов Safari Technology Preview. Для екосистеми фронтенду відзначили Tailwind CSS v4.3 і інструменти для тестування Vue та можливостей вебплатформи.

Загальний вектор: браузери забирають на себе типові UX-патерни — як колись <dialog> для модальних вікон, так зараз — встановлення застосунку.

Чому це важливо

Сценарій встановлення часто ламається не через «складний PWA», а через розсинхрон: маніфест каже одне, worker обслуговує інший scope, скрипт показує кнопку в третій момент. Декларативний елемент зменшує кількість рухомих частин і покращує доступність: у кнопки є зрозуміла семантика, а не div з обробником кліку.

Якщо <install> дійде до стабільної реалізації, дизайн-системам доведеться спростити шар встановлення: один тег плюс поступове покращення для браузерів без підтримки.

На практиці

  1. Слідкуйте за статусом фічі в Chrome Platform Status і на caniuse — поки це експеримент.
  2. Не скасовуйте маніфест і service worker: новий елемент — надбудова над UX, а не заміна вимог PWA.
  3. Заложіть fallback: де <install> недоступний — коротка інструкція або попередній сценарій з подією встановлення.
  4. Якщо таргетите Apple-платформи, перевірте фічі Safari 26.5 (:open, Origin API).
  5. На сторінці лишіть одну головну кнопку встановлення.

Підсумок

<install> — ще один крок до меншої кількості JavaScript заради типового сценарію «поставити вебзастосунок на пристрій». Фіча поки в тестах, але напрям платформи зрозумілий. Контекст — у Frontend Focus #741.