Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ably-labs/jamstack-sync-stream-video
A live watch party app to watch videos with your friends remotely, built with the Jamstack architecture.
https://github.com/ably-labs/jamstack-sync-stream-video
ably audience-engagement demo jamstack jamstack-architecture javascript netlify nuxt realtime shared-experience strapi video-streaming
Last synced: 3 months ago
JSON representation
A live watch party app to watch videos with your friends remotely, built with the Jamstack architecture.
- Host: GitHub
- URL: https://github.com/ably-labs/jamstack-sync-stream-video
- Owner: ably-labs
- Created: 2021-03-01T10:44:57.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-06-17T10:38:36.000Z (over 2 years ago)
- Last Synced: 2024-04-17T15:32:36.353Z (10 months ago)
- Topics: ably, audience-engagement, demo, jamstack, jamstack-architecture, javascript, netlify, nuxt, realtime, shared-experience, strapi, video-streaming
- Language: Vue
- Homepage: https://jamstack-watch-party.ably.dev/
- Size: 50.4 MB
- Stars: 23
- Watchers: 12
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Synchronized video streaming with Jamstack
This 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.
You can try it yourself at https://jamstack-watch-party.ably.dev/.
The host is able to choose a video from the available library.
The host also has full control of the video playback for all participants, including play, pause and seek events.
### How to run this locally
Start your Strapi Server
```
$ cd api
$ npm install
$ npm run develop
```Before 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** > **Roles** > **Public Role** > click the _find_ and _find_ one checkboxes under videos as well as the _auth_ checkbox under ably-auth.
Start your Nuxt App
```
$ cd watch-party
$ npm install
$ npm run dev
```Go to the browser and open http://localhost:3000/ and follow the flow.
### The tech stack
We've used the technologies that work with the [Jamstack architecture](https://jamstack.org/):
Frameworks and Libraries
1. [Nuxt.js](https://nuxtjs.org/) - A Vue framework capable of generating server side rendered (SSR) static sites.
2. [Strapi](https://strapi.io/) - An open-source headless CMS.
3. [Ably](https://ably.com/) - A scalable pub/sub messaging platform.
4. [Netlify](https://www.netlify.com/) - A serverless platform to build, deploy, and collaborate on web apps.### App architecture
![Realtime watch party app architecture](https://user-images.githubusercontent.com/5900152/118970089-76396e00-b98b-11eb-954d-631fe561c318.png)
### Resources
TBD