website that syncs <video> stream + anonymous chat
akin to a self-hosted cytube or rabb.it 🔎 pull requests welcome
node server.js
- runs on default port 3016
- websockets on port 8080
- on production hide behind nginx
- mn assumes the file you want to stream is stored in /media
- login route, admin password and admin page route are printed to the console on startup, write them down
- changing media_file will reload the video for everyone
- sync video watch time with admin
- show any video supported by browser's
- anonymous chat
- hot-reload of videos for clients
- client notification
- chat and sync via websockets
- rudimentary admin authentication
- templating via slm
- routing via express
Tested on Ubuntu 16.04
, Debian 8
, Fedora 24
and Windows 10.1511
written for nodev4
, not tested on nodev6
install node.js and npm, open ports 3016 and 8080 for development, or port 80 for production
- clone the repo
npm install
- ~ 500 CLOC + 300 CSS lines
- tested with 30 users
- almost no bandwidth overhead
- 40MB memory usage