Валідатор Web App Manifest
Перевірте PWA маніфест (manifest.json) на відповідність специфікації Web App Manifest та перегляньте адаптивні іконки з оверлеєм безпечної зони Android.
🔒 Обробляється повністю у вашому браузері — те, що ви тут вводите, ніколи не вивантажується.
Результат
Прогресивний вебзастосунок встановлюється коректно лише тоді, коли його manifest.json задовольняє вимоги браузерів і магазинів застосунків. Цей валідатор аналізує завантажений маніфест і проходить специфікацію W3C Web App Manifest поль за полем: позначає відсутні name та short_name, порожній або некоректний масив icons, відсутність src, sizes чи type в іконок, неправильний start_url, невідоме значення display та передані у theme_color чи background_color рядки, що не є валідними CSS-кольорами. Кожен результат виводиться зрозумілою мовою — а не просто цитатою зі специфікації — тому ви точно знаєте, що виправляти та чому це важливо для можливості встановлення.
Головна особливість — це попередній перегляд безпечної зони адаптивної іконки (maskable icon). Адаптивні іконки Android застосовують маску, вибрану операційною системою — коло, квадрат з заокругленими кутами, краплю та інші — до будь-якої іконки з «purpose»: «maskable». Усе, що знаходиться за межами центрованого кола, яке займає 40% області перегляду іконки, може бути обрізано залежно від маски, застосованої пристроєм. Завантажте файли зображень іконок, на які посилається ваш маніфест, разом із manifest.json, і цей інструмент знайде відповідні за назвою файлу, відтворить кожну адаптивну іконку на полотні в її задекларованому розмірі та накладе точно те саме безпечне коло, щоб ви на власні очі побачили, чи витримає ваше зображення обрізання.
Позначка «Пройдено»/«Не пройдено» під кожним попереднім переглядом — це не просто пункт для галочки. Вона базується на реальному попіксельному аналізі декодованих даних зображення. Інструмент вимірює, яка частина непрозорого вмісту знаходиться поза безпечним колом (вміст, який маска обріже) і яка частка іконки є прозорою (адаптивні іконки повинні мати повністю заповнений непрозорий фон, оскільки прозорість дозволяє кольору маски просвічувати). Обидві перевірки виконуються на фактичному завантаженому зображенні, тож результат відповідає вашому реальному файлу іконки, а не є припущенням.
Усе відбувається локально у вашому браузері: manifest.json читається за допомогою File API, іконки декодуються через createImageBitmap або запасний варіант FileReader/Image, а пікселі аналізуються на полотні в памʼяті. Нічого не завантажується на сервер, що важливо, якщо ваш маніфест містить ще не оприлюднену назву застосунку, внутрішні шляхи start_url або іконки, які перебувають у розробці.