With HTML5 applications, developers are faced with new challenges, such as handling offline capable clients, merging data from the client back to their server side storage, and throttling resources based on the device connection speed. The UI is no longer generated by the server and pushed to the client. Today, developers are forced to look at web application architecture from a different perspective where the browser and JavaScript are taking just as much spotlight as server side code (such as Java or Ruby). This book shows them how.