User:Dash1291/GSoC status

Status updates of my GSoC project on Realtime Collaborative editing on Visual Editor (User:Dash1291/GSoC_2012_Application) go here.

May 7th

 * Wrote some initial code for the collaboration server. Initial modular structure features separate modules for callbacks for Socket.IO events, server's model (includes data model synthesis, and transaction processing) and a front facing server module which binds all the above and may talk to the parser in the further course.
 * Trevor suggested that the code should be pushed to a remote branch of VisualEditor's git repo. With some amount of initial code written, I'm eager to push it early this coming week.

May 14th

 * Started pushing some initial code to 'realtimeve' branch of VisualEditor. Initial code is not the working code and mostly includes the modular structure of the collaboration server.
 * Started to bind VE modules into a node.js module to be used in the collaboration server, but deferred for later due some codebase changes coming from the 'dmrewrite' branch.

June 12th

 * Finished the modular structure of the server. Server would hold session objects, which would contain a reference to the document and users currently working on the editing session.
 * Wrote a node module as a parsoid interface for the server. Using local wiki for testing.
 * Finished binding of `ve` modules in a node module which is used in the server. This along with a minimal client adapter helped in testing the session initialization on a new connection.

The server currently uses the parsoid interface to fetch HTML of the page requested by the client and serve it to the client on connection establishment. Next task will be building up more on the client adapter, so as to listen to the Surface events and collect new transactions and pass them to the server.