{"id":13583271,"url":"https://github.com/Justineo/coplay","last_synced_at":"2025-04-06T18:32:09.319Z","repository":{"id":24585441,"uuid":"27993519","full_name":"Justineo/coplay","owner":"Justineo","description":"Synchronizing video play between two peers.","archived":false,"fork":false,"pushed_at":"2022-12-05T07:40:12.000Z","size":1270,"stargazers_count":769,"open_issues_count":28,"forks_count":114,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-04-04T09:08:41.264Z","etag":null,"topics":["browser-extension","peerjs","video","webrtc"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Justineo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-12-14T12:23:12.000Z","updated_at":"2025-03-14T05:14:55.000Z","dependencies_parsed_at":"2023-01-14T01:14:38.736Z","dependency_job_id":null,"html_url":"https://github.com/Justineo/coplay","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Justineo%2Fcoplay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Justineo%2Fcoplay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Justineo%2Fcoplay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Justineo%2Fcoplay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Justineo","download_url":"https://codeload.github.com/Justineo/coplay/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247531129,"owners_count":20953898,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser-extension","peerjs","video","webrtc"],"created_at":"2024-08-01T15:03:22.219Z","updated_at":"2025-04-06T18:32:06.860Z","avatar_url":"https://github.com/Justineo.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","Projects"],"sub_categories":["Streaming"],"readme":"# Coplay\n\nSynchronizing video play between two peers.\n\n## Intro\n\nWhen two browsers are playing the same web video, Coplay can connect them with WebRTC (using PeerJS) and enable users to control two video players synchronously.\n\nCoplay now works on Youku, Sohu TV, Tencent Video, Tudou, iQiyi, YouTube, AcFun, bilibili, LETV and Vimeo.\n\nButtons on control bar stands for \"connect\", \"play\", \"pause\", \"sync\", \"restart\", \"fullscreen\" and \"video chat\".\n\n## Installation\n\n### Chrome\n\nVisit [Coplay on Chrome Web Store](https://chrome.google.com/webstore/detail/coplay/heolgpojkkeacaokbpolhalhlaidpkkc/) to install.\n\n### Firefox\n\nVisit [Coplay on Firefox Add-ons](https://addons.mozilla.org/firefox/addon/coplay/) to install.\n\n## Usage\n\nBoth browsers visit a same video page, activate Coplay and one of the users enter the other one's peer ID and connect.\n\nAfter establishing the connection, both users can perform pause/resume/seek/restart/sync actions.\n\nFor HTTPS sites, users can use video calls to video chat with each other while watching videos. *You might need to put your headphones on while video chatting because Coplay has no \u003cabbr\u003eAEC\u003c/abbr\u003e(acoustic echo cancellation) support. (Help needed)*\n\n![Coplay](coplay.png)\n\n## Options\n\n* Enable default HTTPS server - To work with HTTPS sites you have to use PeerJS service over HTTPS. (eg. If you want to use it on YouTube but don't want to allow requests to insecure domains, you can use the default HTTPS service or you can set up a custom PeerJS server with HTTPS support using the next options.)\n* Custom server - You can specify custom PeerJS server.\n* Key - Provide additional auth key to your custom server (if necessary).\n* Auto-activate - If Coplay detected supported video players on applicable sites, it will be activated automatically.\n\n## FAQ\n\n* Why Peer ID doesn't show up on Youtube?\n\n  Youtube uses HTTPS but PeerJS (the WebRTC service which Coplay rely on) will make some HTTP requests, which are blocked by browsers' security policies. You can 1. enable default HTTPS server in the options or 2. set up your custom PeerJS server with HTTPS support.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJustineo%2Fcoplay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJustineo%2Fcoplay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJustineo%2Fcoplay/lists"}