@vonage/video-subscribers
v0.0.9
Published
video-subscribers Web Component to be used with Video API following open-wc recommendations
Downloads
1,667
Maintainers
Keywords
Readme
<video-subscribers>
This Web Component follows the open-wc recommendation and is meant to be used with the Vonage Video Client SDK.
A Vonage account will be needed.
A goal is to simplify the code needed to create a real-time, high-quality interactive video application quickly. This Web Component will display all the participants' feeds.
Installation
npm i @vonage/video-subscribers
Usage
import from node modules
<script type="module">
import '@vonage/video-subscribers/video-subscribers.js';
</script>
OR using a CDN
<script type="module" src="https://unpkg.com/@vonage/video-subscribers@latest/video-subscribers.js?module"></script>
place tag in HTML
<video-subscribers></video-subscribers>
Attributes that can be used (optional):
properties
: (Object) the properties used on each video in video subscribers. Find the full list in the documentation.
Getting it to work
- Get a reference to the Web Component.
- Generate a Session and Token.
- Pass Session and Token into Web Component reference.
Note: This can vary with library / framework (see examples folder)
Make it "Responsive"
By default, the Vonage Video API adds each subscriber video as a div
resulting in the video feeds being stacked vertically. To get the video feeds to align horizontally and move to the next row when there is not enough room, apply this CSS to the Web Component:
video-subscribers {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
place-items: center;
}
Note: The
px
inminmax
should match the width you want for each subcriber video.
Linting and formatting
To scan the project for linting and formatting errors, run
npm run lint
To automatically fix linting and formatting errors, run
npm run format
Testing with Web Test Runner
To execute a single test run:
npm run test
To run the tests in interactive watch mode run:
npm run test:watch
Demoing with Storybook
To run a local instance of Storybook for your component, run
npm run storybook
To build a production version of Storybook, run
npm run storybook:build
Tooling configs
For most of the tools, the configuration is in the package.json
to minimize the amount of files in your project.
If you customize the configuration a lot, you can consider moving them to individual files.
Local Demo with web-dev-server
npm start
To run a local development server that serves the basic demo located in demo/index.html