node.js ko

Browsurround

Who

How

The general scheme is that clients use a sort of ghetto-NTP to gauge their offset from the server. Every couple of seconds the server sends out 'sync' messages where clients should play via websockets. I made use of the chrome webaudio API to play songs at a precise rate. It's all built on an express server. Uploads go to S3 through filepicker.io

Bootstrap

Filepicker.io

S3

Chrome webaudio

Express

Jade

Knox

LRU-Cache

Socket.io

jQuery