The solution is truly brillant: it's based on a local HTTP proxy and the
Proxy Auto Configuration. A web application wanting to enter offline mode instructs the local proxy to add its domain to the
PAC, thereby triggering caching of its resources. The application also has to make use of the
Dojo storage API to keep its working data while offline.
As with most of the technologies involved in Ajax, nothing new here since the proxy autoconfig has been there for
more than 10 years! The true novelty of Ajax is the clever use of all these old things together.