This Web Component follows the open-wc recommendation and is meant to be used with the OpenTok Video SDK.
A Vonage Video API account will be needed.
A goal is to simplify the code needed to create a chat room quickly. This Web Component will display all the participants' feeds.
npm i @vonage/video-subscribers
<script type="module">
import '@vonage/video-subscribers/video-subscribers.js';
</script>
<script type="module" src="https://unpkg.com/@vonage/video-subscribers@latest/video-subscribers.js?module"></script>
<video-subscribers></video-subscribers>
properties
: (Object) the properties used on each video in video subscribers. Find the full list in the documentation.
- 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)
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.
To scan the project for linting and formatting errors, run
npm run lint
To automatically fix linting and formatting errors, run
npm run format
To execute a single test run:
npm run test
To run the tests in interactive watch mode run:
npm run test:watch
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
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.
npm start
To run a local development server that serves the basic demo located in demo/index.html