<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>OpenPWA — recently verified</title>
    <link>https://openpwa.net/</link>
    <atom:link href="https://openpwa.net/rss.xml" rel="self" type="application/rss+xml" />
    <description>Evergreen PWA reference entries, ordered by their last verification date.</description>
    <language>en</language>
    <item>
      <title>Workbox</title>
      <link>https://openpwa.net/reference/service-worker/workbox/</link>
      <guid>https://openpwa.net/reference/service-worker/workbox/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>What Workbox is, how its modular packages map to service worker tasks, and how to add it to a project with or without a build tool.</description>
    </item>
    <item>
      <title>The service worker update flow and skipWaiting</title>
      <link>https://openpwa.net/reference/service-worker/update-skipwaiting/</link>
      <guid>https://openpwa.net/reference/service-worker/update-skipwaiting/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the browser detects a new service worker version, what the waiting state means, and how skipWaiting() and clients.claim() opt into an immediate takeover.</description>
    </item>
    <item>
      <title>Service worker registration and scope</title>
      <link>https://openpwa.net/reference/service-worker/registration-scope/</link>
      <guid>https://openpwa.net/reference/service-worker/registration-scope/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.serviceWorker.register() works, what scope controls, and how to align registration with your URL structure.</description>
    </item>
    <item>
      <title>Offline fallback for service workers</title>
      <link>https://openpwa.net/reference/service-worker/offline-fallback/</link>
      <guid>https://openpwa.net/reference/service-worker/offline-fallback/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How to serve a meaningful offline page when both the cache and the network are unavailable, using the service worker fetch event and a pre-cached fallback response.</description>
    </item>
    <item>
      <title>The service worker fetch event and routing</title>
      <link>https://openpwa.net/reference/service-worker/fetch-event/</link>
      <guid>https://openpwa.net/reference/service-worker/fetch-event/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the FetchEvent interface works, how to respond with event.respondWith(), and patterns for routing requests to different handlers.</description>
    </item>
    <item>
      <title>Debugging service workers</title>
      <link>https://openpwa.net/reference/service-worker/debugging/</link>
      <guid>https://openpwa.net/reference/service-worker/debugging/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How to inspect, force-update, and diagnose service workers using Chrome DevTools, Firefox DevTools, and Safari Web Inspector — covering registration state, cache contents, fetch interception, and update flow.</description>
    </item>
    <item>
      <title>Caching strategies for service workers</title>
      <link>https://openpwa.net/reference/service-worker/caching-strategies/</link>
      <guid>https://openpwa.net/reference/service-worker/caching-strategies/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>The five standard caching strategies — Cache First, Network First, Stale-While-Revalidate, Network Only, Cache Only — when to use each, and how Workbox implements them.</description>
    </item>
    <item>
      <title>The Cache API</title>
      <link>https://openpwa.net/reference/service-worker/cache-api/</link>
      <guid>https://openpwa.net/reference/service-worker/cache-api/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How to open, populate, query, and delete caches using the Cache Storage API — the durable key/value store for Request/Response pairs available to service workers and pages.</description>
    </item>
    <item>
      <title>PWAs on iOS and Safari</title>
      <link>https://openpwa.net/reference/platforms/ios-safari/</link>
      <guid>https://openpwa.net/reference/platforms/ios-safari/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PWAs install and behave on iOS/WebKit — Add to Home Screen, standalone mode, service workers, Web Push for installed PWAs, storage limits, and the practical constraints to design around.</description>
    </item>
    <item>
      <title>PWAs on Chrome and Android (WebAPK, TWA)</title>
      <link>https://openpwa.net/reference/platforms/chrome-android/</link>
      <guid>https://openpwa.net/reference/platforms/chrome-android/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PWAs install and run on Chrome for Android — the beforeinstallprompt flow, WebAPK packaging for a real Android app identity, and Trusted Web Activity for Play Store distribution.</description>
    </item>
    <item>
      <title>Core Web Vitals for PWAs: LCP, INP, and CLS</title>
      <link>https://openpwa.net/reference/performance/core-web-vitals/</link>
      <guid>https://openpwa.net/reference/performance/core-web-vitals/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>What LCP, INP, and CLS measure, their good/needs-improvement thresholds at the 75th percentile, field vs lab data, and the PWA-specific levers that move each metric.</description>
    </item>
    <item>
      <title>iOS and Safari Web Push (16.4+)</title>
      <link>https://openpwa.net/reference/notifications/ios-safari-push/</link>
      <guid>https://openpwa.net/reference/notifications/ios-safari-push/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How Web Push works on iOS, iPadOS, and Safari since 16.4 — the Home Screen install requirement, the gesture-bound permission prompt, and the WebKit-specific constraints to design around.</description>
    </item>
    <item>
      <title>Manifest theme_color and background_color</title>
      <link>https://openpwa.net/reference/manifest/theme-background-color/</link>
      <guid>https://openpwa.net/reference/manifest/theme-background-color/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the theme_color and background_color manifest members control the browser chrome color and the splash screen background of your installed PWA — including browser support, meta tag interaction, and dark-mode considerations.</description>
    </item>
    <item>
      <title>Manifest start_url</title>
      <link>https://openpwa.net/reference/manifest/start-url/</link>
      <guid>https://openpwa.net/reference/manifest/start-url/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the start_url manifest member sets the entry point your PWA loads when launched from the home screen or app launcher, and how to design it for deep links, analytics, and scope alignment.</description>
    </item>
    <item>
      <title>Manifest shortcuts</title>
      <link>https://openpwa.net/reference/manifest/shortcuts/</link>
      <guid>https://openpwa.net/reference/manifest/shortcuts/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the shortcuts manifest member adds quick-action entries to the OS long-press or right-click context menu of your installed PWA — jumplist items on Windows, home-screen context menus on Android, and Dock shortcuts on macOS.</description>
    </item>
    <item>
      <title>Manifest share_target</title>
      <link>https://openpwa.net/reference/manifest/share-target/</link>
      <guid>https://openpwa.net/reference/manifest/share-target/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the share_target manifest member registers your installed PWA as a target in the OS native share sheet — receiving shared URLs, text, titles, and files from other apps.</description>
    </item>
    <item>
      <title>Manifest screenshots and richer install UI</title>
      <link>https://openpwa.net/reference/manifest/screenshots/</link>
      <guid>https://openpwa.net/reference/manifest/screenshots/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the screenshots manifest member supplies promotional images that browsers display in richer install dialogs and app-store-style previews, with accepted formats, platform constraints, and form_factor guidance.</description>
    </item>
    <item>
      <title>Manifest name and short_name</title>
      <link>https://openpwa.net/reference/manifest/name-short-name/</link>
      <guid>https://openpwa.net/reference/manifest/name-short-name/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the name and short_name manifest members control your PWA's display label in install prompts, home screens, app switchers, and OS launchers — and how to choose values that work everywhere.</description>
    </item>
    <item>
      <title>Manifest icons and maskable icons</title>
      <link>https://openpwa.net/reference/manifest/icons/</link>
      <guid>https://openpwa.net/reference/manifest/icons/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the icons manifest member supplies app icons for home screens, app launchers, splash screens, and taskbars — including maskable icons, any-purpose icons, and the minimum required set.</description>
    </item>
    <item>
      <title>iOS Add to Home Screen: PWA installation on iOS</title>
      <link>https://openpwa.net/reference/installation/ios-add-to-home-screen/</link>
      <guid>https://openpwa.net/reference/installation/ios-add-to-home-screen/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PWA installation works on iOS and iPadOS — the manual Add to Home Screen gesture, what the web clip can and cannot do, and iOS-specific manifest support.</description>
    </item>
    <item>
      <title>Web Share API: native share sheet from the browser</title>
      <link>https://openpwa.net/reference/capabilities/web-share/</link>
      <guid>https://openpwa.net/reference/capabilities/web-share/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.share() triggers the OS share sheet, what data types it accepts, the user-gesture requirement, and when to fall back to a copy-to-clipboard pattern.</description>
    </item>
    <item>
      <title>Web Bluetooth API: connecting to Bluetooth Low Energy devices</title>
      <link>https://openpwa.net/reference/capabilities/web-bluetooth/</link>
      <guid>https://openpwa.net/reference/capabilities/web-bluetooth/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.bluetooth.requestDevice() scans and connects to BLE peripherals, the user-gesture and secure-context requirements, the GATT service/characteristic model, and the current browser support landscape.</description>
    </item>
    <item>
      <title>Screen Wake Lock API: keeping the screen on</title>
      <link>https://openpwa.net/reference/capabilities/wake-lock/</link>
      <guid>https://openpwa.net/reference/capabilities/wake-lock/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.wakeLock.request() prevents the screen from dimming, the secure-context requirement, the automatic release on page visibility change, and when to use wake lock vs. other keep-alive patterns.</description>
    </item>
    <item>
      <title>Payment Request API: browser-mediated checkout</title>
      <link>https://openpwa.net/reference/capabilities/payment-request/</link>
      <guid>https://openpwa.net/reference/capabilities/payment-request/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PaymentRequest standardises checkout across browsers, the payment-method identifier system, the show()/abort() lifecycle, shipping and contact fields, and the secure-context requirement.</description>
    </item>
    <item>
      <title>Geolocation API: accessing the user's location</title>
      <link>https://openpwa.net/reference/capabilities/geolocation/</link>
      <guid>https://openpwa.net/reference/capabilities/geolocation/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.geolocation works, the explicit permission prompt, secure-context requirement, getCurrentPosition vs watchPosition, accuracy hints, and privacy considerations.</description>
    </item>
    <item>
      <title>File System Access API: reading and writing local files</title>
      <link>https://openpwa.net/reference/capabilities/file-system-access/</link>
      <guid>https://openpwa.net/reference/capabilities/file-system-access/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How showOpenFilePicker/showSaveFilePicker/showDirectoryPicker work, file and directory handles, the permission model, persisting handles, and the Safari/Firefox fallback.</description>
    </item>
    <item>
      <title>Async Clipboard API: reading and writing the clipboard</title>
      <link>https://openpwa.net/reference/capabilities/clipboard/</link>
      <guid>https://openpwa.net/reference/capabilities/clipboard/</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description>How navigator.clipboard.writeText/write and readText/read work, the secure-context and user-gesture requirements, the Clipboard permission model, and the legacy execCommand fallback.</description>
    </item>
    <item>
      <title>Storage persistence, quotas, and eviction</title>
      <link>https://openpwa.net/reference/storage/persistence/</link>
      <guid>https://openpwa.net/reference/storage/persistence/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the StorageManager API estimates quota and requests persistent storage, how browsers grant it, what gets evicted under pressure, and how to keep offline data durable.</description>
    </item>
    <item>
      <title>Service worker lifecycle: install, activate, and update</title>
      <link>https://openpwa.net/reference/service-worker/lifecycle/</link>
      <guid>https://openpwa.net/reference/service-worker/lifecycle/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How a service worker registers, installs, activates, waits, and updates — and how skipWaiting and clients.claim change who controls the page.</description>
    </item>
    <item>
      <title>Web Push: subscriptions, permissions, and delivery</title>
      <link>https://openpwa.net/reference/notifications/web-push/</link>
      <guid>https://openpwa.net/reference/notifications/web-push/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the Push API, VAPID subscriptions, the permission model, and the service worker push/notificationclick events fit together — and why iOS requires an installed PWA.</description>
    </item>
    <item>
      <title>Manifest scope: your PWA's installation boundary</title>
      <link>https://openpwa.net/reference/manifest/scope/</link>
      <guid>https://openpwa.net/reference/manifest/scope/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How the manifest scope member defines app context, deep links, share_target, shortcuts, and off-scope navigation — and how to align it with your product.</description>
    </item>
    <item>
      <title>Manifest display modes: standalone, fullscreen, minimal-ui, browser</title>
      <link>https://openpwa.net/reference/manifest/display/</link>
      <guid>https://openpwa.net/reference/manifest/display/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>What the manifest display member controls, the fallback chain across fullscreen/standalone/minimal-ui/browser, display_override for window-controls-overlay, and how to choose a mode.</description>
    </item>
    <item>
      <title>WebAPK: how Chrome installs PWAs on Android</title>
      <link>https://openpwa.net/reference/installation/webapk/</link>
      <guid>https://openpwa.net/reference/installation/webapk/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>What a WebAPK is, how Chrome mints and updates it, what capabilities it unlocks compared to a web shortcut, and its limitations.</description>
    </item>
    <item>
      <title>Trusted Web Activity (TWA): PWAs in the Play Store</title>
      <link>https://openpwa.net/reference/installation/twa/</link>
      <guid>https://openpwa.net/reference/installation/twa/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>What a Trusted Web Activity is, how it differs from a WebAPK, how Digital Asset Links verification works, and when to use TWA vs other install paths.</description>
    </item>
    <item>
      <title>Installability criteria: what makes a PWA installable</title>
      <link>https://openpwa.net/reference/installation/installability-criteria/</link>
      <guid>https://openpwa.net/reference/installation/installability-criteria/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>The exact criteria a PWA must meet before browsers show an install prompt or let a user add the app to their home screen, broken down by platform.</description>
    </item>
    <item>
      <title>Install prompt UX: when and how to surface your install button</title>
      <link>https://openpwa.net/reference/installation/install-prompt-ux/</link>
      <guid>https://openpwa.net/reference/installation/install-prompt-ux/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Best-practice patterns for timing, placement, and copy of a custom PWA install prompt using the beforeinstallprompt API, including iOS and desktop fallbacks.</description>
    </item>
    <item>
      <title>The install prompt: beforeinstallprompt and customizing install</title>
      <link>https://openpwa.net/reference/installation/install-prompt/</link>
      <guid>https://openpwa.net/reference/installation/install-prompt/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How beforeinstallprompt works, how to defer and trigger it from a user gesture, installability criteria, and why iOS requires a manual Add to Home Screen.</description>
    </item>
    <item>
      <title>Desktop PWA installation: Chrome, Edge, and beyond</title>
      <link>https://openpwa.net/reference/installation/desktop-install/</link>
      <guid>https://openpwa.net/reference/installation/desktop-install/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PWA installation works on Windows, macOS, Linux, and ChromeOS — install UI, window management, OS integration, and per-platform differences.</description>
    </item>
    <item>
      <title>Badging API: app icon badges for installed PWAs</title>
      <link>https://openpwa.net/reference/installation/badging/</link>
      <guid>https://openpwa.net/reference/installation/badging/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How to set and clear numeric or presence badges on a PWA's app icon using the Badging API, with per-platform support notes for Android, iOS, and desktop.</description>
    </item>
    <item>
      <title>Performance</title>
      <link>https://openpwa.net/guides/performance/</link>
      <guid>https://openpwa.net/guides/performance/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Measure the Core Web Vitals, fix the largest offenders, and use the service worker to make launch feel instant.</description>
    </item>
    <item>
      <title>Offline strategies</title>
      <link>https://openpwa.net/guides/offline/</link>
      <guid>https://openpwa.net/guides/offline/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Give the service worker something useful to do — pick a caching strategy per request type and keep the app working without a network.</description>
    </item>
    <item>
      <title>Make it installable</title>
      <link>https://openpwa.net/guides/installable/</link>
      <guid>https://openpwa.net/guides/installable/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Go beyond the minimum bar — meet every installability criterion and design an install moment that earns the add-to-home-screen.</description>
    </item>
    <item>
      <title>Getting started</title>
      <link>https://openpwa.net/guides/getting-started/</link>
      <guid>https://openpwa.net/guides/getting-started/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Build and ship your first installable PWA — add a manifest, register a service worker, and meet the installability bar — end to end.</description>
    </item>
    <item>
      <title>Advanced</title>
      <link>https://openpwa.net/guides/advanced/</link>
      <guid>https://openpwa.net/guides/advanced/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Production-grade capabilities — push, file access, and platform integration — added as progressive enhancement with a compatibility check at every step.</description>
    </item>
    <item>
      <title>Guides</title>
      <link>https://openpwa.net/guides/</link>
      <guid>https://openpwa.net/guides/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Task-oriented how-tos and learning paths for building Progressive Web Apps — from your first PWA to installability, offline, performance, and advanced topics.</description>
    </item>
    <item>
      <title>Tools</title>
      <link>https://openpwa.net/ecosystem/tools/</link>
      <guid>https://openpwa.net/ecosystem/tools/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>A curated editorial reference of the build, package, audit, and test tooling that matters for PWAs — not a directory, marketplace, or sponsored listing.</description>
    </item>
    <item>
      <title>Store policy</title>
      <link>https://openpwa.net/ecosystem/stores/</link>
      <guid>https://openpwa.net/ecosystem/stores/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How each app store packages a PWA — Google Play via TWA, the Microsoft Store as a packaged PWA, and Apple's web-only path — with the sourced accept/partial/reject verdicts owned by the policy data.</description>
    </item>
    <item>
      <title>Payments</title>
      <link>https://openpwa.net/ecosystem/payments/</link>
      <guid>https://openpwa.net/ecosystem/payments/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>Which payment methods and SDKs work inside a PWA — Payment Request, Google Pay, Apple Pay, and provider SDKs — and where the sourced support verdicts live.</description>
    </item>
    <item>
      <title>Monetization</title>
      <link>https://openpwa.net/ecosystem/monetization/</link>
      <guid>https://openpwa.net/ecosystem/monetization/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>The revenue paths open to a PWA — advertising, in-app payments and commerce, subscriptions, and affiliate — and where each is constrained by platform policy.</description>
    </item>
    <item>
      <title>Distribution</title>
      <link>https://openpwa.net/ecosystem/distribution/</link>
      <guid>https://openpwa.net/ecosystem/distribution/</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <description>How PWAs reach users — installable web, Trusted Web Activity on Android, packaged listings in app stores, and desktop install.</description>
    </item>
  </channel>
</rss>
