Starting over this blog with an interesting project I was working during my semester in Sweden.
Notepal is a demo system for collaborative real-time editing, based on the Jupiter model [David A. Nichols, Pavel Curtis, Michael Dixon, and John Lamping, High-Latency, Low-Bandwidth Windowing in the Jupiter Collaboration System (2005), Proceedings of the 8th annual ACM symposium on User interface and software technology: 111–120. (link)].
Jupiter is a multimedia virtual world intended to support long-term remote collaboration, and it supports multiple client platforms and high-latency networks.
In this demo, users can connect to our custom server through a web client, and collaboratively create, edit, delete, or move around sticky notes. The server keeps all clients synchronized in a scalable manner, handling the possible collisions and persisting the data and actions.
This project made use of the full JS stack (node.js, express, socket.io, connect, modernizr, etc.) and MongoDB.
See the dedicated Github website