Node.JS Server and JavaScript/HTML Client for synchronizing online media
Go to file
Calvin Montgomery fa49921866 Speed up join by avoiding quadratic userlist code
At some point the entire user presence logic needs to be refactored for
efficiency, but this at least gives a huge reduction in first page load
time for large channels.
2018-06-06 22:47:00 -07:00
bin Use path.join(__dirname, ...) to potentially avoid www/js/player.js issue 2018-04-05 20:48:59 -07:00
conf/example Update password reset to use new nodemailer impl 2017-09-26 21:22:15 -07:00
docs custom-media: import spec and fix a minor missed validation 2017-08-08 20:46:10 -07:00
gdrive-userscript Clarify gdrive userscript error when fmt_stream_map is missing 2017-12-26 20:40:12 -08:00
integration_test deps: bump mocha and babel 2018-06-03 21:55:41 -07:00
player Fix ustream 2018-01-14 15:02:15 -08:00
src Reject guest names matching the reserved usernames regex 2018-06-03 22:01:40 -07:00
templates Add Admin Setting - Block anonymous connections (#740) 2018-04-07 11:24:52 -07:00
test Fix error on invalid regex for /clean 2018-01-17 21:54:43 -08:00
www Speed up join by avoiding quadratic userlist code 2018-06-06 22:47:00 -07:00
.eslintrc.yml Fix error introduced by lint changes 2018-04-08 19:17:03 -07:00
.gitignore Fix ustream 2018-01-14 15:02:15 -08:00
.travis.yml deps: updates to support node.js 10 2018-06-03 21:19:12 -07:00
ISSUE_TEMPLATE.md Create ISSUE_TEMPLATE.md 2016-02-17 19:38:47 -08:00
LICENSE Annual bit flip 2018-01-07 15:45:18 -08:00
NEWS.md deps: updates to support node.js 10 2018-06-03 21:19:12 -07:00
README.md Clarify some wording 2018-03-17 17:47:27 -07:00
config.template.yaml Remove config option that is no longer used 2017-12-26 11:00:18 -08:00
index.js Kill process if www/js/player.js is not found at startup 2018-04-05 20:39:49 -07:00
package.json deps: bump mocha and babel 2018-06-03 21:55:41 -07:00
postinstall.sh Remove confirmation prompt from postinstall 2018-01-07 15:42:08 -08:00
run.sh Refactor out server init to index.js 2013-10-11 15:48:01 -05:00
servcmd.sh.js Add support for v8-profiler (optional dep) 2017-09-18 21:54:36 -07:00

README.md

CyTube

CyTube is a project I started in early 2013 as a hobby project to build my own clone of synchtube.com (which shut down in March 2013).

The basic concept is that users register channels where connected viewers can watch videos from different video hosts (e.g., YouTube, Twitch) and the playback is synchronized for all the viewers in the channel.

Each channel has a playlist where users can queue up videos to play, as well as an integrated chatroom for discussion.

The official server is located at https://cytu.be, but there are other public servers hosted for various communities.

Installation

The installation guide for server administrators is located on the wiki.

Contact

Please check if the FAQ answers your question already.

For bug reports and feature requests, please open a GitHub issue. To report a security vulnerability, or to discuss an issue with https://cytu.be itself (unrelated to the code), please send me an email: cyzon@cytu.be

Please be courteous and search through the open and closed issues for your request before submitting a new one.

General help with the software and the website is also available on the IRC channel at irc.esper.net#cytube during US daytime hours.

License

Original source code in this repository is provided under the MIT license (see the LICENSE file for the full text).

Bundled source code, such as third-party CSS and JavaScript libraries, are provided under their respective licenses.