IHS Strategic
Tüm Blog Yazıları
HowTo09 Eylül 2026•2 dk okuma

PWA (Progressive Web Apps) Nedir? Web Sitenizi Mobil Uygulamaya Dönüştürme Rehberi

PWA ile web sitenizi modern web standartlarında mobil uygulamaya dönüştürün. Dijital ajans seviyesinde adım adım kurulum adımları ve sektör trendleri.

S

Sistem Yöneticisi

Kıdemli Yazılım Mimarı

PWA (Progressive Web Apps) Nedir?

PWA (Progressive Web App), web teknolojileri (HTML, CSS, JavaScript) kullanılarak geliştirilen, kullanıcılara yerel (native) mobil uygulama deneyimi sunan modern web çözümüdür. Tarayıcı üzerinden çalışır; indirme mağazası (App Store, Google Play) zorunluluğunu ortadan kaldırır. Çevrimdışı çalışma, anlık bildirim (push notification) ve ana ekrana ekleme gibi yerel uygulama özelliklerini destekler.

Modern Web Dünyasında PWA ve Sektörel Trendler

Mobil trafik payı her geçen gün artarken, kullanıcıların yeni uygulama indirme eğilimi düşmektedir. Güncel dijital trendler, hafif, hızlı ve kurulum gerektirmeyen çözümleri öne çıkarır. Başarılı bir dijital ajans stratejisinde PWA, şu avantajları sağlar:

  • Düşük Maliyet: iOS ve Android için ayrı kod tabanı yazma gereksinimini bitirir.
  • Yüksek Dönüşüm: Anında yüklenir, veri tüketimini minimize eder, kullanıcı kaybını önler.
  • SEO Avantajı: Standart URL yapısına sahip olduğu için arama motorları tarafından indekslenir.
  • Çevrimdışı Erişim: Cache API ve Service Worker mekanizmaları ile zayıf bağlantılarda dahi çalışır.

PWA Temel Bileşenleri

Bir web sitesini PWA standardına taşımak için üç temel bileşen zorunludur:

  1. HTTPS Protokolü: Service Worker API güvenliği için SSL sertifikası şarttır.
  2. Web App Manifest: Uygulama adı, simgeler, tema rengi ve ekran modunu tanımlayan JSON dosyası.
  3. Service Worker: Ağ isteklerini yakalayan, önbellekleme (caching) ve arka plan senkronizasyonu yapan JavaScript katmanı.

Adım Adım Web Sitesini PWA'ya Dönüştürme

Adım 1: Web App Manifest Dosyası Oluşturma

Kök dizine manifest.json dosyası ekleyin ve HTML <head> alanında referans verin:

{
  "name": "Sitem PWA",
  "short_name": "PWA",
  "start_url": "/",
  "display": "standalone",
  "background_color": "#ffffff",
  "theme_color": "#0055ff",
  "icons": [
    {
      "src": "/icon-192.png",
      "sizes": "192x192",
      "type": "image/png"
    },
    {
      "src": "/icon-512.png",
      "sizes": "512x512",
      "type": "image/png"
    }
  ]
}

HTML bağlantısı:

<link rel="manifest" href="/manifest.json">

Adım 2: Service Worker Yazımı (Cache-First Stratejisi)

Kök dizinde sw.js oluşturun. Temel statik varlıkları önbelleğe alma örneği:

const CACHE_NAME = 'site-cache-v1';
const ASSETS = [
  '/',
  '/index.html',
  '/style.css',
  '/app.js'
];

self.addEventListener('install', (e) => {
  e.waitUntil(
    caches.open(CACHE_NAME).then((cache) => cache.addAll(ASSETS))
  );
});

self.addEventListener('fetch', (e) => {
  e.respondWith(
    caches.match(e.request).then((res) => res || fetch(e.request))
  );
});

Adım 3: Service Worker'ı Ana Sayfada Kaydetme

Ana JavaScript dosyanıza veya <body> sonuna kayıt kodunu ekleyin:

if ('serviceWorker' in navigator) {
  window.addEventListener('load', () => {
    navigator.serviceWorker.register('/sw.js')
      .then(reg => console.log('SW Kayıt Başarılı:', reg.scope))
      .catch(err => console.error('SW Kayıt Hatası:', err));
  });
}

Adım 4: Doğrulama ve Test

Google Chrome DevTools Lighthouse sekmesini açın. Progressive Web App denetimini çalıştırın. Manifest geçerliliği, Service Worker durumu ve HTTPS kriterlerini test edin.

PWA Optimizasyonu İçin Pratik İpuçları

Cache Yönetimi: Cache sürüm adını (örn. v1, v2) her güncellemede değiştirin. Eski cache dosyalarını activate event dinleyicisinde temizleyin.
  • Büyük boyutlu medyaları önbelleğe almaktan kaçının.
  • Dinamik içerikler için Network-First veya Stale-While-Revalidate stratejilerini uygulayın.
  • iOS Safari desteği için <meta name="apple-mobile-web-app-capable" content="yes"> etiketini ekleyin.