At Roche we recently delivered HTML5 application
Targetted only for modern browsers
To support Offline mode we brought whole application to client-side.
Node.js on server-side synchronizes the clients and saves data to physical database (mongodb)
Minimalistic client-server communication based on sockets (Socket.IO)
Single-page application. Browser history is handled with HTML5 History API
Data is stored in browser's localStorage with simple id/hash values
Server just backups the data and synchronizes clients if needed.
It's CommonJS/NodeJS style modules bundled for browser with modules-webmake
Concatenated file is over 13 thousand lines long and weights about 450kB
219kB when minified
60kB when minified and gzipped
One average picture on Facebook weights 100-500kB (depends on screen resolution)
Use a spacebar or arrow keys to navigate