Making open web apps functional while offline is an important problem to solve: users may lose network while on the move. In addition, having your files available locally will make your app require less server access and therefore be more responsive. Serving web-app users a good offline experience can be tricky if they become disconnected from the internet. Providing offline functionality is important for UX, and some of our recent technologies that make it easier for farmer to access the information offline.
Application uses devices that are always connected to the internet, so it's more important than ever that applications can handle poor or no network connection. Ideally, our apps should still work when the network connection is lost, with a mechanism for local data storage synced with a remote database. We can achieve the same effects in mobile hybrid apps, as well as web apps in general, with some relatively our new technologies. What we need, then, is a way for our app to detect when we don't have an internet connection, and then respond in a different and particular way. This is where the service worker API comes in