The concept is similar. The difference is that a PWA is intended to be just another web application, but can continue to function when the online connection fails. It does this by caching application elements, using queues to send data back to the server (the queues can be processed when the connection is restored), and gracefully telling the user that a connection is not possible without breaking the look/feel of the application. Yes there are some things the app can't do when disconnected, but that is just a planned state now, rather than the default "I have no choice how to handle that" state. Because the manifest file defines what is needed to get started, your web app can now run locally without the UI of the browser. (i.e. empty window with only your web content). To the user it appears as a local application. To you, you have a single code base that runs on all mobile platforms looking like native apps, and the desktop in the traditional sense. So responsive with steroids. What data your application needs cached, or even if caching is a good thing is up to you as the developer. Not all applications will fit the PWA concept nicely, but I believe most do with a little thinking.