At the heart of every web application is one thing – data – and the aims of every web application is the same: present data to the application user; allow the user to add, update or delete data; save the data for future use. For the sever based application developer this is all fairly straight forward – techniques such as using PHP with a MySQL database are simple and well understood.
However, for the client only web application the situation is slightly different and they have two problems that they must overcome: data must be structured and stored in such a way that it can be handled effectively by the application; the data may need to be stored for use at a later date. The obvious solution is a client-side database that can be accessed from the browser by Javascript. The obvious question is 'How?'.
Browser Databases
If a developer is creating a web application for a specific audience then they may be able to make use of an HTML5 SQL database. However, even though most web browsers are becoming increasingly HTML5 compliant not all have implemented the HTML5 SQL databases and some don't intend to do so. Therefore, it is possible, for example, to write an HTML5 database application for Chrome but this would not work with Firefox (and probably never will).