Una Progressive Web App (PWA) è un’applicazione costruita con tecnologie web che può acquisire progressivamente alcune caratteristiche tipiche delle applicazioni installate: può avere una propria icona, aprirsi in una finestra dedicata, utilizzare risorse memorizzate localmente, funzionare in parte senza connessione e, quando piattaforma e browser lo consentono, utilizzare notifiche push e altre API del dispositivo.

La parte importante è proprio quel progressive. Una PWA non è semplicemente “un sito trasformato in app” e non esiste una checklist universale capace di stabilire che ogni PWA debba comportarsi nello stesso modo su Chrome, Safari, Android, iPhone e desktop.

Il Web si è evoluto. Anche la definizione pratica delle Progressive Web App è diventata più flessibile.

La documentazione MDN dedicata alle Progressive Web App descrive infatti un’applicazione web capace di sfruttare funzionalità moderne mantenendo il principio del progressive enhancement: le capacità disponibili vengono utilizzate quando il browser le supporta, senza rendere inutilizzabile l’esperienza di base quando non sono disponibili.

È una distinzione decisiva, soprattutto nel 2026. Manifest, service worker, installazione, funzionamento offline e notifiche sono componenti che possono collaborare, ma non vanno più trattati come una formula rigida del tipo manifest + service worker = PWA.

In questa guida vediamo come funziona realmente una Progressive Web App, quali capacità può offrire oggi, cosa cambia tra iOS, Android e desktop, quale rapporto ha con la SEO e quando può avere senso implementarla anche su WordPress.

Cosa sono le Progressive Web App

Una Progressive Web App parte dal Web. Ha URL, viene distribuita attraverso HTTP/HTTPS, utilizza tecnologie come HTML, CSS e JavaScript e viene eseguita attraverso il motore del browser. A questa base possono essere aggiunte capacità che rendono l’esperienza più vicina a quella di un’applicazione installata.

È quindi più corretto pensare alla PWA come a una web application che può diventare progressivamente più integrata con il dispositivo, piuttosto che come a una categoria completamente separata dal Web.

Questa impostazione permette di mantenere uno dei vantaggi più importanti del Web: l’utente può raggiungere l’applicazione attraverso un normale link senza dover necessariamente passare prima da uno store.

Cosa significa davvero “Progressive”

Il termine progressive descrive un principio progettuale. L’applicazione dovrebbe fornire una base funzionante e aggiungere capacità più avanzate quando browser, sistema operativo e dispositivo le supportano.

Un ecommerce può funzionare normalmente come sito web nel browser. Su un dispositivo compatibile potrebbe anche essere aggiunto alla schermata Home, aprirsi in modalità standalone, conservare alcune risorse nella cache, mostrare una pagina offline, ricevere notifiche dopo il consenso dell’utente e integrare alcune funzioni offerte dalle Web API.

Su un browser che non supporta una di queste capacità, il negozio non dovrebbe smettere di funzionare. Semplicemente continuerà a offrire l’esperienza web disponibile. La progressività è quindi una strategia di compatibilità, non una promessa che tutte le funzioni saranno disponibili ovunque.

PWA, web app e sito responsive non sono la stessa cosa

Un sito responsive adatta layout, contenuti e interfaccia alle dimensioni dello schermo. Può essere perfettamente utilizzabile da smartphone senza essere progettato come applicazione installabile.

Una web app, invece, utilizza il Web per offrire un’interazione assimilabile a quella di un software: una dashboard, un gestionale, un editor online o un’applicazione SaaS sono esempi tipici.

La PWA aggiunge un altro livello. Usa le capacità disponibili nel Web moderno per aumentare installabilità, integrazione, resilienza alla rete e comportamento application-like. Per questo una PWA può essere responsive, ma essere responsive non rende automaticamente un sito una PWA.

La distinzione è utile anche quando stai valutando se trasformare un sito WordPress in un’app mobile: sito mobile, PWA e applicazione nativa risolvono problemi in parte diversi.

Come funziona una PWA

Non esiste un singolo componente che “trasforma” magicamente un sito in Progressive Web App.

Il modello nasce dalla combinazione di diversi livelli: applicazione web → manifest → capacità del browser → service worker quando necessario → storage/cache → integrazione con il sistema operativo. Due elementi ricorrono frequentemente nell’architettura PWA: Web App Manifest e service worker. Il loro ruolo, però, è diverso.

Schema dell’architettura Progressive WebApp con Web App Manifest, service worker e Web API collegati al browser
Una PWA resta un’applicazione web: manifest, service worker e Web API aggiungono capacità diverse in base a browser e piattaforma.

Web App Manifest: identità e comportamento dell’app installata

Il Web App Manifest è un file JSON attraverso il quale una web application può fornire al browser metadati sulla propria identità e sul modo in cui preferisce essere presentata quando viene installata.

Lo standard Web Application Manifest del W3C prevede, tra le altre cose, informazioni come nome dell’applicazione, icone e URL preferito da aprire al lancio.

{
  "name": "Applicazione esempio",
  "short_name": "Esempio",
  "start_url": "/",
  "display": "standalone",
  "icons": [
    {
      "src": "/icon-512.png",
      "sizes": "512x512",
      "type": "image/png"
    }
  ]
}

Il manifest non contiene l’applicazione. Descrive l’esperienza installata. Può indicare quale icona utilizzare, quale URL aprire e se l’app dovrebbe essere visualizzata in modalità standalone, nascondendo parte dell’interfaccia tradizionale del browser.

Il supporto effettivo ai singoli membri del manifest varia però tra browser. Per questo bisogna verificare le capacità realmente disponibili sui dispositivi che interessano al progetto.

Service Worker: cache, rete e funzionamento offline

Il service worker è uno script eseguito dal browser in un contesto separato rispetto alla pagina.

La Service Worker API documentata da MDN permette al service worker di posizionarsi logicamente tra l’applicazione, il browser e la rete. Può intercettare determinate richieste e decidere se recuperare una risorsa dalla rete, dalla cache o attraverso un’altra strategia.

Questo è il meccanismo alla base di molte delle funzioni associate alle PWA. Con un service worker opportunamente configurato, l’applicazione può decidere che una risorsa venga recuperata dalla cache locale quando disponibile, mentre una richiesta contenente dati aggiornati potrebbe continuare a preferire la rete.

Il punto è proprio questo: offline e cache non sono un interruttore acceso/spento. Dipendono dalla strategia scelta per ciascun tipo di risorsa.

Se vuoi approfondire il comportamento della cache sul sito, è utile distinguere questo livello dal normale caching utilizzato in WordPress. Cache HTTP, cache lato server, page cache e Cache Storage gestita da un service worker possono coesistere, ma hanno scopi e cicli di vita differenti.

Il service worker non è obbligatorio per qualsiasi esperienza installabile

Un service worker rimane fondamentale quando vuoi realizzare funzioni come caching programmabile, esperienza offline o gestione di eventi in background. Ma non va più considerato un requisito universale per qualsiasi esperienza che il browser consente di installare.

MDN distingue i criteri di installabilità dalle capacità offline che possono essere implementate tramite service worker. Inoltre browser differenti applicano criteri differenti all’installazione.

HTTPS e Web API: perché la sicurezza è strutturale

Molte delle API più potenti utilizzate dalle PWA richiedono un secure context. I service worker, ad esempio, sono disponibili normalmente quando l’applicazione viene servita tramite HTTPS; localhost viene trattato come eccezione sicura per facilitare lo sviluppo locale.

Il motivo è logico. Un service worker può intercettare richieste, gestire risorse in cache e interagire con funzionalità potenti del browser. Per un progetto PWA reale, HTTPS non è quindi un’aggiunta da fare alla fine, ma parte dell’architettura.

Cosa può fare oggi una Progressive Web App

L’elenco delle capacità PWA è cresciuto molto rispetto alle prime implementazioni. Questo non significa però che ogni Progressive Web App possa usare tutte le Web API né che ogni funzione sia disponibile su ogni dispositivo.

Il modello corretto è: capability richiesta → supporto browser → supporto sistema operativo → permessi → fallback.

Installazione e integrazione con il sistema operativo

Quando browser e piattaforma supportano l’esperienza, una web app può essere installata o aggiunta al dispositivo e avviata attraverso un’icona. A seconda dell’ambiente può comparire nella Home Screen, nel launcher delle applicazioni, nel menu Start, nel Dock, nella ricerca del sistema o in altri punti riservati alle applicazioni.

L’interfaccia può inoltre aprirsi in una finestra separata dal normale browser se il comportamento installato lo prevede. Questo riduce la distanza percepita tra sito e applicazione, ma il runtime resta quello del Web.

Funzionamento offline e strategie di cache

“Una PWA funziona offline” è una semplificazione troppo forte. La formulazione corretta è: una PWA può progettare una specifica esperienza per condizioni offline o di rete instabile.

Può rendere disponibile l’interfaccia principale, mostrare contenuti già visitati, conservare alcune risorse statiche, mostrare una pagina offline dedicata o memorizzare operazioni localmente in attesa della connessione. Ma un ecommerce non può completare magicamente un pagamento remoto senza rete e una dashboard non può recuperare dati aggiornati da un’API irraggiungibile.

Il service worker permette di gestire il problema. Non elimina la dipendenza dalla rete quando la funzione richiede realmente il server.

Cache-first, network-first e stale-while-revalidate

La strategia di caching deve dipendere dal tipo di dato. Per asset molto stabili, una logica cache-first può essere sensata. Per dati che devono essere aggiornati, può essere preferibile network-first. Con stale-while-revalidate, invece, può essere mostrata rapidamente una versione in cache mentre una versione più recente viene richiesta in background.

Queste strategie spiegano perché dire semplicemente “la PWA mette il sito in cache” non basta. La qualità dell’esperienza dipende dalla progettazione del comportamento della cache.

Notifiche push, badge e altre capacità

Le Progressive Web App possono utilizzare, sulle piattaforme compatibili, API che le avvicinano ulteriormente alle applicazioni installate.

La Push API permette a una web application di ricevere messaggi push; normalmente il service worker gestisce gli eventi ricevuti e la Notifications API può mostrarli all’utente.

Il browser e il sistema operativo applicano comunque permessi, policy e vincoli UX. Inoltre l’utente deve autorizzare l’uso delle notifiche. Disponibile sul Web non significa automaticamente disponibile su ogni PWA.

PWA su Android, iPhone, iPad e desktop

La compatibilità è uno dei punti in cui le guide sulle Progressive Web App diventano obsolete più rapidamente. Non esiste una generica piattaforma “PWA”: esistono browser, motori di rendering e sistemi operativi che implementano capacità differenti.

PWA su Android

Android rimane uno degli ambienti nei quali l’installazione delle PWA è maggiormente diffusa. Questo non significa che tutte le API abbiano lo stesso supporto.

Anche elementi apparentemente semplici come la gestione di un prompt personalizzato per l’installazione non sono completamente interoperabili: l’evento beforeinstallprompt, per esempio, ha supporto limitato.

Progressive Web App su iPhone e iPad nel 2026

Da iOS e iPadOS 16.4 le web app aggiunte alla Home Screen possono utilizzare Web Push. Apple ha implementato il supporto utilizzando gli standard Push API, Notifications API e Service Workers, come descritto nella documentazione WebKit sul Web Push.

Con Safari 26, Apple ha modificato ulteriormente il comportamento. Su iOS 26 e iPadOS 26, per impostazione predefinita ogni sito aggiunto alla Home Screen viene aperto come web app; l’utente può scegliere di disattivare l’opzione “Open as Web App” durante l’aggiunta se preferisce creare un normale bookmark. Il cambiamento è documentato nelle WebKit Features in Safari 26.0.

È un cambiamento importante perché rende ancora meno corretta la vecchia equazione assenza manifest = impossibile avere esperienza web app su iPhone. Il manifest resta prezioso perché consente al sito di descrivere intenzionalmente l’esperienza installata, ma il comportamento concreto dipende dalla piattaforma.

PWA su Windows, macOS e Linux

Anche su desktop l’esperienza cambia in base alla combinazione browser/sistema operativo. Chrome ed Edge offrono una forte integrazione delle web app installabili su desktop; Safari supporta web app su macOS. Firefox desktop presenta invece un modello differente rispetto ai browser Chromium.

Per confrontare i diversi percorsi di installazione è utile la guida MDN su installazione e disinstallazione delle web app.

La conseguenza pratica è semplice: se una funzione è essenziale per il business, bisogna testarla sui browser realmente usati dal proprio pubblico e non affidarsi all’etichetta generica “PWA compatible”.

Vantaggi delle Progressive Web App

Le PWA possono offrire vantaggi importanti, ma questi derivano dall’architettura scelta. Non dal semplice fatto di chiamare l’applicazione “PWA”.

Una base web può servire più piattaforme

Una delle ragioni più interessanti per scegliere una PWA è la possibilità di partire da una base applicativa web condivisa. Questo può ridurre la necessità di costruire fin dall’inizio applicazioni completamente separate per più sistemi operativi.

Attenzione però a non trasformare questo vantaggio in una promessa universale di risparmio. Se il progetto deve integrare funzioni molto specifiche del dispositivo, mantenere comportamenti diversi tra piattaforme o raggiungere il livello di una complessa applicazione nativa, il costo di sviluppo e testing può crescere comunque molto.

L’accesso parte dal Web

Una PWA può essere raggiunta direttamente attraverso un URL. Questo riduce l’attrito iniziale: l’utente può utilizzare l’applicazione prima di decidere se aggiungerla al dispositivo.

Offline e rete instabile possono essere gestiti meglio

La possibilità di controllare cache e richieste tramite service worker permette di progettare un’esperienza più resiliente, particolarmente utile per applicazioni utilizzate sul campo, cataloghi, dashboard operative, sistemi di raccolta dati, contenuti consultati ripetutamente e applicazioni destinate a utenti con connettività intermittente.

Aggiornamento e distribuzione restano legati al Web

Una web application viene normalmente aggiornata sul server. Con i service worker compare però un nuovo problema da gestire: sincronizzare correttamente codice e risorse memorizzate. Una strategia di cache sbagliata può mantenere asset vecchi dopo un deploy, mentre un aggiornamento aggressivo può interrompere una sessione in corso.

Limiti e svantaggi delle PWA

La PWA non è la risposta migliore per ogni progetto. Il rischio principale è scegliere la tecnologia perché appare più moderna, non perché risolve un problema.

Le capacità non sono identiche su tutte le piattaforme

Browser e sistemi operativi non implementano contemporaneamente tutte le Web API e alcune capacità restano specifiche di determinate piattaforme. Questo comporta sviluppo progressivo, feature detection, fallback e testing.

Offline non significa “tutto funziona senza Internet”

Il service worker può gestire il comportamento senza rete, ma non può creare dati che non esistono sul dispositivo. Se l’applicazione deve recuperare quotazioni aggiornate, verificare credenziali sul server, processare pagamenti o interrogare un database remoto, la connessione rimane necessaria.

La vera domanda da progettare è quindi: cosa deve continuare a funzionare quando la rete scompare?

Una PWA non è automaticamente più veloce

Service worker e cache possono migliorare molto alcuni flussi, soprattutto nelle visite successive. Possono però anche produrre l’effetto opposto se vengono configurati male.

Una PWA può avere JavaScript eccessivo, main thread congestionato, immagini pesanti e pessimi Core Web Vitals esattamente come qualsiasi altro sito. Le metriche reali vanno quindi controllate indipendentemente dalla tecnologia usata. La guida ai Core Web Vitals approfondisce proprio questo livello di performance percepita dall’utente.

PWA è un modello applicativo, non un punteggio performance.

Quando l’esperienza nativa resta superiore

Un’app nativa mantiene vantaggi importanti quando il progetto richiede integrazione molto profonda con il sistema operativo, API hardware non disponibili o non sufficientemente interoperabili sul Web, elaborazioni specifiche, comportamento rigidamente controllato sulla piattaforma o integrazione strategica con gli store.

PWA vs app nativa: quale scegliere

La scelta non dovrebbe partire dalla tecnologia. Dovrebbe partire dall’esperienza che devi costruire.

CriterioPWAApp nativaSito responsive
Accesso tramite URLNon come modalità principale
Installazione possibileSì, secondo browser/piattaformaSì, normalmente tramite storeNon necessariamente
Presenza negli app storePossibile in alcuni scenari, non necessariaTipicamente sìNo
OfflineConfigurabileConfigurabileLimitato senza architettura specifica
PushDipende da piattaforma/browserAmpio supportoDipende dall’ambiente web
Accesso alle API del dispositivoAmpio ma non completoGeneralmente più profondoDipende dalle Web API
Unica base web multipiattaformaPunto di forzaNo, salvo framework cross-platform
SEO webNormali URL web indicizzabili se tecnicamente accessibiliEcosistema distintoNormali URL web
AggiornamentiDistribuzione web + gestione cacheProcesso applicativo/storeDistribuzione web
ComplessitàMedia/alta secondo funzioniAltaBassa/media

Quando conviene una Progressive Web App

La PWA è particolarmente interessante quando l’utente arriva inizialmente dal Web ma può avere valore nel tornare frequentemente all’applicazione: ecommerce con forte componente di fidelizzazione, portali clienti, applicazioni SaaS, gestionali accessibili dal browser, servizi di prenotazione, strumenti operativi e cataloghi utilizzati sul campo.

Quando conviene un’app nativa

L’app nativa diventa più interessante quando le capacità del dispositivo fanno parte del prodotto stesso, non sono semplici miglioramenti.

Quando basta un buon sito responsive

Molti siti non hanno bisogno né di una PWA né di un’app. Un sito aziendale, un blog o una landing page consultata occasionalmente difficilmente ottengono valore solo perché compaiono come icona nella Home Screen.

Aggiungere manifest, service worker, cache specifica e logica di aggiornamento significa introdurre anche complessità tecnica da mantenere. Se non esiste un reale scenario di utilizzo application-like, un sito responsive, accessibile e veloce può essere la soluzione migliore.

Progressive Web App e SEO: cosa cambia davvero

Una PWA non dispone di un trattamento SEO speciale. Dal punto di vista della ricerca, continua a essere essenziale rendere disponibili URL, contenuti e link che Google possa trovare, renderizzare e indicizzare correttamente.

Le PWA possono essere indicizzate da Google

Google può processare pagine che utilizzano JavaScript, ma questo non elimina la necessità di progettare correttamente l’applicazione. La documentazione JavaScript SEO di Google Search Central spiega crawling, rendering e indicizzazione delle applicazioni JavaScript e raccomanda di mantenere contenuti, link e metadata accessibili al motore di ricerca.

Questo significa che una PWA può avere normali URL indicizzabili, ma PWA e SEO non sono sinonimi.

Una PWA non è un ranking factor

Non esiste una regola Google secondo cui “essere una PWA migliora il ranking”. Una buona implementazione può migliorare aspetti dell’esperienza in determinati scenari, ma questi effetti non autorizzano a trasformare la correlazione in una regola SEO.

Installare un plugin PWA non equivale a un’ottimizzazione del posizionamento.

Performance e SEO vanno misurate separatamente

Una PWA lenta resta una web application lenta. Continuano quindi a essere importanti quantità ed esecuzione del JavaScript, rendering, immagini, risposta del server, caching, stabilità del layout, interattività, accessibilità, crawlability, internal linking e metadata.

Perché il vecchio audit PWA di Lighthouse non esiste più

In passato Lighthouse disponeva di una categoria dedicata alle Progressive Web App e veniva spesso utilizzato come una specie di checklist PWA. Google Chrome ha successivamente deciso di rimuovere quella categoria. La documentazione ufficiale di Chrome sui criteri di installabilità spiega l’abbandono dei vecchi test PWA di Lighthouse.

Lighthouse continua a essere utile per performance, accessibility, best practices e SEO. La nostra guida a Google Lighthouse approfondisce questi audit. Ma nel 2026 “100 nel test PWA di Lighthouse” non è un obiettivo possibile né una certificazione attuale di qualità PWA.

PWA con WordPress: plugin o sviluppo personalizzato

Anche un sito WordPress può essere trasformato o esteso per offrire capacità PWA. La modalità più semplice consiste nell’utilizzare un plugin che generi gli elementi tecnici fondamentali, come manifest, icone e service worker.

Nel repository ufficiale esistono soluzioni dedicate, tra cui PWA for WP. Questo approccio può essere adeguato per esigenze relativamente semplici.

Il problema nasce quando “installabile” viene confuso con “applicazione progettata”.

Cosa può automatizzare un plugin PWA

A seconda della soluzione scelta, un plugin può aiutare a gestire generazione del manifest, icone, modalità standalone, service worker, pagina offline, regole di caching, indicazioni di installazione ed eventuali integrazioni push.

Quando un plugin non basta

Se il sito contiene workflow complessi, aree personali, ecommerce, dati aggiornati in tempo reale o interazioni applicative specifiche, la configurazione predefinita può non essere sufficiente.

Con WooCommerce, per esempio, mettere in cache indiscriminatamente pagine di prodotto, carrello, checkout, sessioni e dati personalizzati può produrre risultati molto diversi da quelli desiderati. Bisogna distinguere asset statici → dati aggiornabili → contenuti personalizzati → sessione → operazioni transazionali e decidere il comportamento di ciascuna categoria.

Cache, service worker e WordPress devono convivere

Un sito WordPress può già utilizzare page cache, object cache, browser cache, CDN, reverse proxy e ottimizzazione delle risorse. Aggiungere un service worker crea un ulteriore livello che deve essere coordinato con gli altri.

Altrimenti può accadere che il server abbia già pubblicato una nuova versione mentre il service worker continua a fornire un asset precedente. In altre parole, un plugin PWA installato in cinque minuti può creare un problema che emerge solo al successivo aggiornamento del sito.

Per WordPress, quindi, la domanda corretta non è “quale plugin trasforma il sito in PWA?”, ma: quali capacità PWA servono realmente al mio sito e come devono interagire con l’architettura già presente?

Come creare una PWA: architettura minima

Per un progetto professionale partirei dal comportamento desiderato, non dal plugin o dal manifest.

1. Definisci cosa deve diventare installabile

Chiarisci l’ambito dell’applicazione. Deve aprire l’intero sito, una dashboard o solo una parte del servizio? Questa decisione influenza start_url, scope, navigazione e service worker.

2. Configura il Web App Manifest

Definisci almeno identità, icone, URL iniziale e comportamento di visualizzazione coerenti con il progetto. Non aggiungere proprietà soltanto perché compaiono in una checklist.

3. Decidi se e perché serve un service worker

Definisci quali risorse intercettare, quali mettere in cache, con quale strategia, cosa non deve essere cacheato, quale comportamento usare senza rete e come gestire gli aggiornamenti.

4. Progetta l’esperienza offline

Non partire da “salviamo tutto”. Definisci invece le operazioni che l’utente dovrebbe poter completare senza connessione. Una buona esperienza offline potrebbe essere semplicemente una schermata che spiega chiaramente quali funzioni non sono disponibili.

5. Gestisci gli aggiornamenti

Ogni modifica al service worker può creare una nuova versione del worker e passare attraverso le fasi del relativo lifecycle. Bisogna decidere quando una nuova versione diventa attiva e come evitare che l’utente stia utilizzando contemporaneamente codice e asset incompatibili.

6. Testa dispositivi e browser reali

Non limitarti a un test in Chrome desktop. Verifica almeno le piattaforme che generano una quota significativa del traffico reale e controlla separatamente navigazione, installazione, modalità standalone, offline, aggiornamenti, autenticazione, notifiche, cache e API critiche.

Il testing reale conta più di qualsiasi etichetta “PWA ready”.

Esempi di Progressive Web App e casi d’uso

È facile trovare online elenchi di grandi brand accompagnati da percentuali spettacolari su traffico e conversioni. Molti di quei case study risalgono però ai primi anni di diffusione delle PWA e non descrivono necessariamente l’implementazione attuale di quei servizi. Per capire quando la tecnologia è utile, sono più interessanti gli scenari.

Ecommerce con clienti ricorrenti

Un ecommerce può permettere al cliente abituale di aggiungere il negozio alla Home Screen, mantenere parte dell’interfaccia disponibile rapidamente e, quando appropriato e autorizzato, utilizzare notifiche. Il checkout e le informazioni personali richiedono però una gestione della cache molto più prudente rispetto agli asset statici.

Dashboard e applicazioni SaaS

Una dashboard utilizzata ogni giorno è un candidato naturale. L’utente arriva inizialmente tramite URL, effettua il login e successivamente può preferire avviare il servizio da un’icona come qualsiasi altra applicazione. Qui l’installabilità ha una funzione reale: ridurre l’attrito nell’accesso ripetuto.

Applicazioni operative

Un tecnico che utilizza un’applicazione sul campo può incontrare connessioni discontinue. Una PWA progettata correttamente potrebbe mantenere disponibili interfaccia e dati necessari per alcune operazioni e sincronizzare le modifiche quando la rete ritorna.

Questo scenario mostra bene il vantaggio del service worker: non “rende Internet disponibile offline”, ma permette all’applicazione di decidere come comportarsi quando Internet non è disponibile.

Cataloghi e contenuti consultati ripetutamente

Cataloghi, manuali, documentazione o contenuti utilizzati frequentemente possono sfruttare la cache per migliorare la disponibilità delle risorse già recuperate. Anche qui è necessario distinguere ciò che può diventare obsoleto rapidamente da ciò che può essere conservato più a lungo.

Quando vale la pena trasformare un sito in PWA

La risposta migliore non dipende dalla moda tecnologica. Una Progressive Web App ha senso quando esiste un comportamento dell’utente che beneficia realmente delle capacità applicative del Web.

  • utenti che tornano frequentemente;
  • utilizzo intenso da mobile;
  • valore concreto dell’installazione;
  • necessità di lavorare con connessioni instabili;
  • possibilità di progettare utilmente una modalità offline;
  • valore reale delle notifiche;
  • workflow simili a quelli di un’applicazione;
  • necessità di mantenere una base Web raggiungibile tramite URL.

Il segnale opposto è altrettanto importante. Se hai un normale sito informativo e l’unico obiettivo è mostrare all’utente un pulsante “Installa”, probabilmente stai introducendo più complessità che valore.

Manifest, service worker, cache, aggiornamenti, compatibilità e testing hanno tutti un costo.

La migliore PWA non è quella con più API. È quella che utilizza solo le capacità che migliorano realmente il task dell’utente.

Per molti progetti sarà una Progressive Web App. Per altri resterà preferibile un’app nativa. E per moltissimi siti, un’ottima esperienza web responsive continuerà a essere esattamente ciò che serve.