{"id":20058895,"url":"https://github.com/ably-labs/jamstack-sync-stream-video","last_synced_at":"2025-05-05T15:30:42.600Z","repository":{"id":37094564,"uuid":"343380390","full_name":"ably-labs/jamstack-sync-stream-video","owner":"ably-labs","description":"A live watch party app to watch videos with your friends remotely, built with the Jamstack architecture.","archived":false,"fork":false,"pushed_at":"2022-06-17T10:38:36.000Z","size":52849,"stargazers_count":25,"open_issues_count":2,"forks_count":2,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-04-09T00:41:21.122Z","etag":null,"topics":["ably","audience-engagement","demo","jamstack","jamstack-architecture","javascript","netlify","nuxt","realtime","shared-experience","strapi","video-streaming"],"latest_commit_sha":null,"homepage":"https://jamstack-watch-party.ably.dev/","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ably-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-01T10:44:57.000Z","updated_at":"2024-07-02T15:05:24.000Z","dependencies_parsed_at":"2022-06-24T13:39:42.367Z","dependency_job_id":null,"html_url":"https://github.com/ably-labs/jamstack-sync-stream-video","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably-labs%2Fjamstack-sync-stream-video","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably-labs%2Fjamstack-sync-stream-video/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably-labs%2Fjamstack-sync-stream-video/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably-labs%2Fjamstack-sync-stream-video/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ably-labs","download_url":"https://codeload.github.com/ably-labs/jamstack-sync-stream-video/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252523982,"owners_count":21762011,"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":["ably","audience-engagement","demo","jamstack","jamstack-architecture","javascript","netlify","nuxt","realtime","shared-experience","strapi","video-streaming"],"created_at":"2024-11-13T13:04:49.973Z","updated_at":"2025-05-05T15:30:39.582Z","avatar_url":"https://github.com/ably-labs.png","language":"Vue","readme":"# Synchronized video streaming with Jamstack\n\nThis project demonstrates realtime messaging in Jamstack apps. Dubbed as a 'live watch party', this app allows a host to create a private watch party room, invite friends to it and watch videos together. They can also share live comments and see who's participating (online) in the party.\n\nYou can try it yourself at https://jamstack-watch-party.ably.dev/.\n\n\n\u003cimg width=\"1415\" alt=\"Watch party homepage\" src=\"https://user-images.githubusercontent.com/5900152/118952645-bd1e6800-b979-11eb-9a54-288fa04615c9.png\"\u003e\n\n\nThe host is able to choose a video from the available library.\n\n\u003cimg width=\"1427\" alt=\"Watch party video library\" src=\"https://user-images.githubusercontent.com/5900152/118952997-0ec6f280-b97a-11eb-90bf-f586782e3210.png\"\u003e\n\n The host also has full control of the video playback for all participants, including play, pause and seek events.\n\n\u003cimg width=\"1432\" alt=\"Screenshot 2021-05-07 at 20 01 47\" src=\"https://user-images.githubusercontent.com/5900152/118953174-361dbf80-b97a-11eb-9bdb-b1eb57079fe7.png\"\u003e\n\n\n### How to run this locally\n\n\nStart your Strapi Server \n\n```\n$ cd api\n$ npm install\n$ npm run develop\n```\n\nBefore you can get things working, head to http://localhost:1337/admin, create a new user and log into your Admin to add videos! Make sure you go to your **User Permissions** \u003e **Roles** \u003e **Public Role** \u003e click the _find_ and _find_ one checkboxes under videos as well as the _auth_ checkbox under ably-auth. \n\nStart your Nuxt App \n```\n$ cd watch-party\n$ npm install\n$ npm run dev\n```\n\nGo to the browser and open http://localhost:3000/ and follow the flow.\n\n\n### The tech stack\n\nWe've used the technologies that work with the [Jamstack architecture](https://jamstack.org/):\n\nFrameworks and Libraries\n1. [Nuxt.js](https://nuxtjs.org/) - A Vue framework capable of generating server side rendered (SSR) static sites.\n2. [Strapi](https://strapi.io/) - An open-source headless CMS.\n3. [Ably](https://ably.com/) - A scalable pub/sub messaging platform.\n4. [Netlify](https://www.netlify.com/) - A serverless platform to build, deploy, and collaborate on web apps.\n\n### App architecture\n\n![Realtime watch party app architecture](https://user-images.githubusercontent.com/5900152/118970089-76396e00-b98b-11eb-954d-631fe561c318.png)\n\n### Resources\n\nTBD\n","funding_links":[],"categories":["Vue"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fably-labs%2Fjamstack-sync-stream-video","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fably-labs%2Fjamstack-sync-stream-video","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fably-labs%2Fjamstack-sync-stream-video/lists"}