One of the great promises of HTML5 is to allow rich web applications to continue to operate (inasmuch as it's possible) when a connection is not available to the Internet. There are two major components of providing such a service, and both are addressed in some way by the HTML5 standard. However, these are two of the most-disputed areas of the spec when it comes to actual implementation.
The Application Cache
The HTML5 spec has a lengthy description of the Application Cache mechanism. Basically, this allows web developers to specify what content should be displayed for a URL when a connection can't be made to the server that normally handles the URL.
What developers need
We at Lucidchart need the following in order to develop a first-rate offline tool:
- Higher storage limits for the App Cache and Web Storage. Preferably, a way to prompt the user to allow us to use unlimited storage--as any native app would have access to.
- Universal, reliable implementation of the App Cache standard in all major browsers.
- (Optional) Universal, reliable implementation of Web SQL. Unfortunately, Mozilla has sworn never to implement this standard.
And we are not alone in this. I struggle to think of a meaningful web application that does not have these needs in order to build offline functionality. Whether it's email, word processing, drawing, diagramming, analytics, or CRM, we need a reliable way to store large amounts of structured data in the browser if we're going to be able to cut the cord to the Internet and continue working.