Google Gears

From OLPC
Jump to: navigation, search

A few people have suggested getting Google Gears (an open source firefox extension) to work on the laptops. The recommended persistence layer currently is pyxpcom. Zvi Boshernitzan started working on a mediawiki reader and thumbwiki implementation in Gears (see http://gearswiki.theidea.net ) that imports mediawiki dumps and runs quite snappily for wikis of up to a few hundred pages. (import and export can be slow still.) What would be needed to make this happen? Do we need to revisit supporting firefox extensions in general, or can we just implement this one?

A new version of Lector, a browser-based bookreader, is also available -- and something else it would be useful to support. In particular, we should figure out how this could work with the efforts that have been put into a script to chunk long html pages into smaller ones for reading long html-format texts, and in-browser controls and frameless browsing for a bookreader mode (care of IanB and Jerub, respectively).

This article is a stub. You can help the OLPC project by expanding it.

How Is It Useful?

April 2008: Google Docs starting to be available offline using Google Gears

Here's some ideas of applications that could be written entirely in HTML and Javascript, using Google Gears for persistence (temporary offline persistence, or long-term persistence).


  • First, of course, any web application that needs to work offline as well as online.
  • The Physics Calculator idea could easily be implemented in Javascript, with interesting numbers added by the child being saved in Google Gears.
  • Bookmarking in a large content bundle could be implemented with this.
  • Bookmarking of any content that isn't URL-structured, like content that uses iframes or innerHTML to change the display dynamically.
  • Some data can be held more privately by just keeping it in the browser, like previous search queries.
  • High scores for a game.
  • You could potentially serialize a game by serializing all its structures, and possibly some DOM, and create a fairly high-level save-game function. (Serialization isn't trivial or built-in to Javascript, but with a little work and some constraints a lot of it could be generalized.)
  • With some on-submit handlers you could fairly transparently (to the server-side HTML) save a form submission locally when the remote host isn't available. Maybe a generic Javascript add-on could be created to gracefully handle lost connections in web applications. It wouldn't let you keep using the application, but it would avoid the kind of situation where you lose a connection for a few minutes and are stuck on a page with a filled-in form and no way to save it.