A server offers direct restful read/write access to pages it owns and proxy access to pages held elsewhere in federated space. A page is owned if it was created with the server or has been cloned and edited such that it is believed to be the most authoritative copy of a page previously owned elsewhere. A server operates as a proxy to the rest of the federated wiki. In this role it reformats data and metadata providing a unified experience. It is welcome to collect behavioral statistics in order to improve this experience by anticipating permitted peer-to-peer server operations.
In summary, the server's client side exists to:
- Offer to a user a browsing experience that is independent of any specific server.
- Support writing, editing and curating of one server in a way that offers suitable influence over others.
Working with CoffeeScript
cd client coffee -wc .
-wc option asks coffee not terminate, watch the source files and recompile as you make changes.
The coffee translator is a node.js package, so you'll need to install a recent version from http://nodejs.org/#download and then the npm package manager from http://npmjs.org/ and then install coffee http://jashkenas.github.com/coffee-script/