Un widget es una miniaplicación que permite interactuar con servicios e información distribuida en Internet. Los widgets que utilizan una tecnología AJAX (Asynchronous Javascript and XML) como técnica de desarrollo hacen que éstos sean más interactivos, permitiendo mantener una comunicación en background con el servidor para el intercambio de datos y actualización de ciertas áreas de la aplicación sin necesidad de recargar la página completa. Ajax no es una tecnología en sí mismo. En realidad, se trata de la unión de varias tecnologías que se desarrollan de forma autónoma y que se unen de nuevas y sorprendentes formas.
Pero el principal problema se presenta cuando perdemos la conexión. Este problema puede ser resuelto construyendo los widgets sobre la base de Google Gears. Éste proporciona un API accesible mediante JavaScript que permite almacenar recursos en el cliente o en una base de datos. Además asegura la sincronización entre el estado online/offline, la cual es completamente transparente al usuario. Google Gears cuenta con un pequeño servidor web (LocalServer), una pequeña Base de Datos (creada a partir de ‘SQLite‘) y un motor que ejecuta JavaScript (WorkerPool).
http://es.corank.com/tech/framed/google-Gears-Api-Developers-Guide–Hom