I'm trying to build a web app that needs to work offline at times. The standard approach until now has been to use the browser's Application Cache. However, it appears that Application Cache is deprecated and will be removed from browsers in the future (see https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache). The recommendation is to use Service Workers. However, Service Workers is not currently fully supported in all browsers.
So, what to do? What is the best way, today, to go about building an offline web application, considering the current state of Application Cache and Service Workers? Are there other approaches that are less reliant on browser features?