Other services similiar to ours do exist... But none of them are perfect. They are lacking in the number of supported video platforms, lacking in must-have features like fullscreen playback and several other areas aswell. We aim to improve these points!
A group of people can join a room and watch videos together. Synchronized. This mean, that if someone has a bad connection and his/her video needs to buffer everybody else is forced to wait, too. Members of a room can also add new videos to a playlist which will play after the current video is finished. In theory, this works for various video-services, such as YouTube, Vimeo or Twitch (even though our implementation currently only support YouTube and Vimeo, but thanks to an easy wrapper-api, adding a new player can be done at a whim).
We used node.js with expressjs as the webserver, served through nginx as a reverse-proxy. On the client-side we used Bootstrap for the design and JavaScript with jQuery to support the functionality.
Not all of the features of the various players-apis are documented well, so a lot of minor differences to the expected behaviour came up during development.
Finishing (some of) our set goals.
JavaScript might not be the best programming-language... (but we already knew that ¯_(ツ)_/¯)
Support more video-players, add new features like up-/downvoting videos in the upcoming playlist or a chat.
- git clone https://github.com/jannikw/vync.it.git
- npm install
- node app.js