== JaxiWiki ==
Jaxi is a wiki, using [MediaWiki] syntax with an AJAX design. The primary goal is to make a wiki that "doesn't suck." What does that mean? Well, why are "normal" wikis bad? * They are slow. Each time you go to a new page, the HTML for the entire page is generated on the server and sent to the browser. * Editing is frustrating. You edit some text in a text box, and then click on a preview button to see if it worked. * Most wikis have bad bottlenecks for very popular pages (eg. RecentChanges) that are computationally hard on the server. * Most wikis have relatively poor search interfaces and algorithms. How can we fix these problems? It's not too hard, if we stop thinking of the browser as a dumb terminal: * Send only an intermediate representation of the wiki markup language to the client, and have HTML generation done in the browser. * In addition to making all page transitions faster and less jarring, this will allow live previews of most content as you edit. * When a page is viewed, pre-fetch pages linked from it in order of popularity to hide latency. * Instead of generating popular pages each time they are requested, cache them on the client and poll for updates. * Add Google suggest-style search autocomplete and make search results more interactive, eg. with inline previews. === Code === Code for Jaxi wiki is in the prototype stage. As soon as something more feature-complete is ready, snapshots will be posted here. |