There are a number of ways to handle the caching of assets like js, css, html etc. In the past my favorite has always been to automatically append a timestamp to the filename when pushing into prod. I have also tried automating this with gulp using gulp-rev which works really well. But last week I came across a new method for dealing with offline applications on HTML5Rocks which needed to distinguish between content available offline and that which needed a network connection. It outlined a way of notifying the client of file changes in order to force the client cache to refresh. This got me thinking if I could do this for offline applications why not leverage the same technique for traditional websites and applications. Here is the proof of concept that I came up with.