Loading




Knowledge, Optimized

Technologies used to make this app include: * "backbone.js":http://documentcloud.github.com/backbone/ * "gaeboilerplate":http://metachris.org/2011/08/app-engine-boilerplate-2-0-using-html5-boilerplate-v2-on-google-app-engine * "appengine-rest-server":http://code.google.com/p/appengine-rest-server/ * "jQuery autoResize":https://github.com/padolsey/jQuery.fn.autoResize * "textile":http://www.ben-daglish.net/textile.shtml * "Mathjax":http://www.mathjax.org/ Bookvoid is made of a lightweight backend hosted on Google App Engine and a client html/javascript app. The server code is just a thin layer over the data store with a simple security model. Almost all logic is implemented client side, the exception being image hosting which does some processing on the server . Every book, every section, every piece of user data has a url. The use of a powerful combination of http and uuids allows decentralized editing of the centralized repository and easy caching for offline access (at the cost of ugly urls). Data is cached locally. When there is no connectivity, data structures are saved locally, assigned a uuid if necessary and synced later. Book text is automaticcally pre-synched for offline access (subject to space limits in browser storage). Images are not always available offline.