Розробка повного набору favicon та touch-іконок для сайту та PWA

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Розробка повного набору favicon та touch-іконок для сайту та PWA
Простий
~2-3 години
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1358
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1250
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    956
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1188
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    929
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    947

Розробка favicon та touch-іконок

Часто сайт чудово виглядає на десктопі, але на мобільних пристроях іконка в закладках або на робочому столі виявляється розмитою або обрізається. Усе тому, що для кожної платформи потрібен свій розмір і формат. Нерідко розробники забувають про іконки для PWA, і застосунок не проходить перевірку Lighthouse. Або використовують один favicon.ico для всього, а на Retina він мильний. Ми вирішуємо ці проблеми за вас. Наші інженери мають 10+ років досвіду у веб-розробці та підготували понад 500 наборів іконок для сайтів та PWA.

Які розміри та формати потрібні для сучасних браузерів?

Сучасний набір favicon — це не один файл, а цілий артефакт для різних сценаріїв. Ось мінімальний перелік файлів, які мають бути на сайті:

Файл Розмір Призначення
favicon.ico 16×16, 32×32 (multi-size) Браузери, зворотна сумісність
favicon-16x16.png 16×16 Chrome, адресний рядок
favicon-32x32.png 32×32 Safari, Retina
apple-touch-icon.png 180×180 iOS "додати на екран"
android-chrome-192x192.png 192×192 Android Chrome
android-chrome-512x512.png 512×512 PWA splash screen
mstile-150x150.png 150×150 Windows плитка
safari-pinned-tab.svg SVG Safari Pinned Tab

Якщо ви використовуєте PWA, обов'язково додайте маніфест із правильними посиланнями. Детальніше про маніфест на developer.mozilla.org.

Автоматична генерація набору в 3 рази швидша, ніж ручна підготовка кожного файлу.

Чому важлива підтримка maskable-іконок для Android?

Android адаптує іконки під різні форми — коло, округлений квадрат. Без атрибута "purpose": "maskable" система може обрізати іконку непередбачувано. Щоб цього уникнути, вихідник повинен мати безпечну зону: відступ у 40 пікселів від країв для розміру 512×512. У маніфесті це виглядає так:

{
  "icons": [
    { "src": "/android-chrome-192x192.png", "sizes": "192x192", "type": "image/png" },
    { "src": "/android-chrome-512x512.png", "sizes": "512x512", "type": "image/png", "purpose": "any maskable" }
  ]
}

Що входить у роботу?

Ми готуємо повний комплект для вашого сайту:

  • Вихідний SVG-файл із правильними пропорціями та безпечною зоною для maskable.
  • Усі необхідні растрові файли (від 16×16 до 512×512) у PNG та ICO.
  • Коректний маніфест manifest.json із зазначенням усіх іконок та їх purpose.
  • Мета-теги для <head>: apple-touch-icon, icon, msapplication-Tile, safari-pinned-tab.
  • Перевірка на реальних пристроях iOS, Android, Windows та в різних браузерах.
  • Консультація щодо інтеграції та підтримка після впровадження.

Як ми готуємо набір: покроковий процес

  1. Аналіз вихідного логотипу. Перевіряємо, чи підходить він для маленьких розмірів. Якщо ні — спрощуємо контури.
  2. Створення SVG-джерела. Малюємо або адаптуємо логотип у векторі з запасом для maskable.
  3. Автоматична генерація всього набору. Використовуємо RealFaviconGenerator та кастомні скрипти для консистентності.
  4. Налаштування manifest.json. Прописуємо шляхи, purpose, maskable, sizes.
  5. Вставка мета-тегів у <head>. Усі 8 варіантів, включаючи msapplication-Tile та apple-touch-icon.
  6. Перевірка на реальних пристроях. Тестуємо на iOS, Android, Windows та в браузерах.

Типові помилки та як їх уникнути

Помилка Наслідок Рішення
Пропуск apple-touch-icon 180×180 Іконка на iOS не відображається Обов'язково включити 180×180 PNG з мета-тегом apple-touch-icon
Неправильний шлях у маніфесті PWA не завантажує іконки Переконатися, що шляхи відносні від кореня та файли доступні
Відсутність maskable purpose Android обрізає іконку неправильно Додати purpose: "any maskable" для іконок 192 та 512
SVG для Safari Pinned Tab не монохромний Не фарбується в колір теми Використовувати лише чорний fill, без градієнтів
Занадто складний логотип для 16×16 Губиться читаність Зробити окрему спрощену версію для 16×16

Гарантуємо, що після нашої роботи всі іконки будуть коректно відображатися на всіх пристроях.

Терміни та вартість

Підготовка повного набору займає від 0,5 до 1 робочого дня. Вартість розраховується індивідуально залежно від складності логотипу.

Замовте підготовку іконок

Зв'яжіться з нами, щоб обговорити ваш проєкт. Ми підготуємо іконки, які працюватимуть усюди — на iOS, Android, Windows та в браузерах.

Коли додаток не відкривається без інтернету, користувач іде до конкурентів

PWA перетворює сайт на надійний додаток, який працює навіть в офлайні, надсилає push-повідомлення та встановлюється на головний екран. Розробка PWA додатків — це впровадження Service Worker, налаштування кеш-стратегій та інтеграція Web Push. На відміну від нативних додатків, вам не потрібні дві команди під iOS та Android — один код працює у всіх сучасних браузерах. Замовте аудит вашого проекту на PWA-сумісність — ми безкоштовно оцінимо потенціал та терміни.

Як Service Worker керує мережевими запитами?

Service Worker — це JavaScript-проксі між браузером та мережею. Працює в окремому потоці, перехоплює запити та вирішує, звідки їх віддавати: з кешу, з мережі або комбінацією. Розглянемо три базові стратегії на реальних сценаріях.

Стратегія кешування Використання Поведінка при офлайн
Cache First статика (CSS/JS з content hash) віддається з кешу, миттєво
Network First API, замовлення, новини спочатку мережа, при помилці — кеш
Stale While Revalidate контент соцмереж, стрічка сторінок одразу кеш, потім оновлення

Cache First застосовується для активів з хешем в імені — файл ніколи не зміниться, можна кешувати назавжди. Stale While Revalidate оптимальна для контенту, де допустима невелика затримка актуалізації. Workbox від Google автоматизує версіонування кешу та інвалідацію — без нього коректний Service Worker вимагатиме 300+ рядків коду з нетривіальними edge cases. Vite + vite-plugin-pwa генерує Service Worker з конфігу, включаючи precaching статики.

import { VitePWA } from 'vite-plugin-pwa';
export default {
  plugins: [
    VitePWA({
      registerType: 'autoUpdate',
      includeAssets: ['favicon.ico'],
      manifest: { /* name, icons, start_url, display */ },
      workbox: {
        globPatterns: ['**/*.{js,css,html,ico,png,svg}'],
        runtimeCaching: [
          { urlPattern: /^https?:\/\/api\./,
            handler: 'NetworkFirst',
            options: { cacheName: 'api-cache' }
          }
        ]
      }
    })
  ]
};

Як офлайн-режим реалізується на практиці?

«Працює офлайн» для різних продуктів означає різне. Ось три типові сценарії.

  • Офлайн-читання (новинні сайти, документація): Service Worker кешує сторінки при першому візиті, стратегія Stale While Revalidate + Background Sync для синхронізації після відновлення з'єднання.
  • Офлайн-редагування (нотатки, завдання): IndexedDB зберігає локальні дані, Background Sync API ставить операції в чергу — браузер синхронізує сам, навіть якщо вкладка закрита. Обмеження: Background Sync підтримується тільки в Chromium.
  • Офлайн-форма: користувач натиснув «Надіслати» без інтернету — дані не втрачаються, а ставляться в чергу та надсилаються автоматично. Для медичних та страхових форм це критично.

Проблема, про яку часто забувають: конфлікти при синхронізації. Якщо користувач А редагував запис офлайн, а користувач Б змінив його онлайн — потрібна стратегія вирішення (last-write-wins, three-way merge або показ конфлікту користувачеві). Ми опрацьовуємо ці сценарії на етапі проектування.

Як працюють Web Push-повідомлення?

Web Push доставляє повідомлення через браузер + Push Service (FCM для Chrome/Edge, APNs для Safari). Користувач надає дозвіл → браузер підписується на Push Service → ви отримуєте endpoint та ключі → надсилаєте повідомлення → Push Service доставляє в браузер. Реалізація через бібліотеку web-push (Node.js) або аналог для вашого бекенду. VAPID-ключі генеруються один раз, підписка зберігається в базі даних.

На поточний момент iOS (починаючи з версії 16.4) підтримує Web Push тільки для встановлених PWA, Chrome/Firefox/Edge — повна підтримка без встановлення. Частота та релевантність повідомлень безпосередньо впливають на відтік підписників — A/B тестування часу надсилання та формулювань стандартна практика.

Чому варто обрати PWA замість нативних додатків?

Економія на розробці під дві платформи — до 60% бюджету. Один код, єдина бізнес-логіка, автоматичне оновлення без магазинів. Ми виконали понад 30 PWA-проектів для e-commerce, фінтеху та корпоративних систем — гарантуємо сумісність з останніми версіями браузерів та відмінні показники Core Web Vitals (LCP, CLS, INP). PWA збільшує конверсію в середньому на 36% (дані Google). Сертифіковані спеціалісти з досвідом 7+ років у веб-розробці.

Що входить у розробку PWA під ключ?

Етап Результат Термін
Аудит поточного додатку Звіт PWA‑score, рекомендації 1–2 дні
Проектування офлайн‑сценаріїв Документація, прототип 2–3 дні
Розробка Service Worker + маніфест Код, автоматичне тестування 5–10 днів
Інтеграція Web Push (опціонально) Бекенд‑ендпоінт, підписка 3–5 днів
Тестування на реальних пристроях Звіт, правки 3–5 днів
Деплой та документація Доступи, інструкція, гарантія 1 місяць 1–2 дні

App Shell архітектура та precaching критичних ресурсів при першому встановленні дають миттєве завантаження оболонки додатку навіть при повільному з'єднанні.

Процес роботи та терміни

  1. Аудит поточного додатку (Lighthouse PWA score, аналіз сценаріїв).
  2. Визначення цінних офлайн-сценаріїв.
  3. Налаштування Service Worker через Workbox та реалізація маніфесту.
  4. Інтеграція Web Push (якщо потрібно).
  5. Тестування на реальних пристроях — Chrome DevTools, Safari Web Inspector.
  6. Деплой, документація, навчання команди.

Орієнтовні терміни: базова PWA (маніфест + Service Worker + кеш статики) — 1–2 тижні поверх готового додатку; Web Push — 1–2 тижні; офлайн-редагування з IndexedDB та Background Sync — 3–6 тижнів залежно від складності даних.

Вартість розраховується індивідуально після аудиту. PWA-проект зазвичай обходиться в 2–3 рази дешевше нативного додатку під обидві платформи. Додаткову економію дає відсутність витрат на публікацію в App Store та Google Play. Зв'яжіться з нами для консультації — ми безкоштовно оцінимо ваш проект та запропонуємо оптимальну стратегію впровадження.

Посилання для поглибленого вивчення