All Projects → RblSb → SyncTube

RblSb / SyncTube

Licence: MIT license
Synchronized video viewing with chat and other features (one-channel web service)

Programming Languages

javascript
184084 projects - #8 most used programming language
haxe
709 projects
CSS
56736 projects
HTML
75241 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to SyncTube

wp-cloud-deploy
WPCloudDeploy is a WordPress plugin that allows you to easily deploy and manage your own dedicated high-performance WordPress servers and sites at any cloud server provider.
Stars: ✭ 28 (-79.1%)
Mutual labels:  self-hosted
devliver
Your private self hosted composer repository with user management
Stars: ✭ 50 (-62.69%)
Mutual labels:  self-hosted
Maily-Form
Forms on any website
Stars: ✭ 29 (-78.36%)
Mutual labels:  self-hosted
fork
A simple, self hosted, low level programming language.
Stars: ✭ 69 (-48.51%)
Mutual labels:  self-hosted
janitor
Availability monitoring and alerting for IOT devices
Stars: ✭ 55 (-58.96%)
Mutual labels:  self-hosted
minio-rclone-webdav-server
A @rclone served WebDAV server with @minio as the s3 storage backend docker example
Stars: ✭ 17 (-87.31%)
Mutual labels:  self-hosted
alternative-frontends
🔐🌐 Privacy-respecting web frontends for popular services
Stars: ✭ 821 (+512.69%)
Mutual labels:  self-hosted
codesunaba
A simple ClojureScript code sandbox in your browser.
Stars: ✭ 18 (-86.57%)
Mutual labels:  self-hosted
squeaknode
Peer-to-peer status feed 📜 with posts unlocked by Lightning ⚡
Stars: ✭ 29 (-78.36%)
Mutual labels:  self-hosted
hexon
Let's hexo online.
Stars: ✭ 28 (-79.1%)
Mutual labels:  self-hosted
locory
A private/selfhosted location history solution
Stars: ✭ 46 (-65.67%)
Mutual labels:  self-hosted
fugu
Fugu is simple, privacy-friendly, open-source and self-hostable product analytics. 🐡
Stars: ✭ 74 (-44.78%)
Mutual labels:  self-hosted
astro
An open, extensible, dashboard for all of your homelab services.
Stars: ✭ 25 (-81.34%)
Mutual labels:  self-hosted
Tachidesk-Server
A rewrite of Tachiyomi for the Desktop
Stars: ✭ 1,052 (+685.07%)
Mutual labels:  self-hosted
swetrix-js
The JavaScript analytics client for Swetrix Analytics
Stars: ✭ 28 (-79.1%)
Mutual labels:  self-hosted
bumper
A standalone and self-hosted implementation of the central server used by Ecovacs vacuum robots.
Stars: ✭ 179 (+33.58%)
Mutual labels:  self-hosted
shaarli ynh
Shaarli package for YunoHost
Stars: ✭ 20 (-85.07%)
Mutual labels:  self-hosted
cran-server
Self-hosted R package repository
Stars: ✭ 17 (-87.31%)
Mutual labels:  self-hosted
ansible-github actions runner
Ansible Role to deploy GitHub Actions self-hosted runner
Stars: ✭ 76 (-43.28%)
Mutual labels:  self-hosted
SheetAble
Self-hosted music sheet organizing software
Stars: ✭ 107 (-20.15%)
Mutual labels:  self-hosted

SyncTube

Synchronized video viewing with chat and other features. Lightweight modern implementation and very easy way to run locally.

Default channel example: http://synctube-example.herokuapp.com/

New features

  • Reworked layout and theme
  • Multi-Language support
  • Hotkeys (Alt-P for global play/pause, etc)
  • Mobile view with page fullscreen
  • Way to play local videos for network users (without NAT loopback feature)
  • Playback rate synchronization (with leader)
  • /30, /-21, etc to rewind video playback in seconds
  • Links mask: foo.com/bar${1-4}.mp4 to add multiple items
  • Override every front-end file you want (user/res folder)
  • Native mobile client

Supported players

  • Youtube (videos, streams and playlists)
  • Raw mp4 videos and m3u8 playlists (or any other media format supported in browser)
  • Iframes (without sync)

Setup

  • Open 4200 port in your router settings (port is customizable)
  • npm install ws in this project folder (NodeJS required)
  • Run node build/server.js
  • Open showed "Local" link for yourself and send "Global" link to friends

Setup (Docker)

  • As alternative, you can install Docker and run:
  • docker build -t synctube .
  • docker run --rm -it -p 4200:4200 -v ${PWD}/user:/usr/src/app/user synctube
  • (Docker container hides real local/global ips, so you need to checkout it manually)

Configuration

It's just works, but you can also check user/ folder for server settings and additional customization.

Plugins

How to use

  • Login with any nickname
  • Add your video url with "plus" button below (youtube or direct link to mp4 for example)
  • Now it plays and syncs for all page users, well done
  • You can click "leader" button to get access to global video controls (play/pause, time setting, playback speed)
  • If you want to restrict permissions or add admins/emotes, see Configuration above

Intergations

Heroku:

  • Create app and commit repo to get build
  • Remove user/ folder from .gitignore and commit it to change default configuration
  • Add APP_URL config var with your-app-link.herokuapp.com value to prevent sleeping when clients online

Development

  • Install Haxe 4.2, VSCode and Haxe extension
  • haxelib install all to install extern libs
  • If you skipped Setup section before: npm ci
  • Open project in VSCode and press F5 for client+server build and run

About

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].