# Livery Interactive Client

This is a frontend application for Livery interactive video client.
Full documentation can be found here - https://docs.livery.live/

## Usage

This interactive client can be embedded within the Livery Video Player two ways: iFrame and web component.

### iFrame

The project's build flow is set up to generate a deployable bundle to any environment handled in Livery devops panel. All files and assets are deployed to the specified environment and loaded within the iFrame.

Example test URL: https://embed.livery.live/?id=5ddb98f5e4b0937e6a4507f2&livery_interactive=https://dev-stable.interactive.livery.live?livery_tenantid=____8SDWDJfHfXtGwM0AAA==

The `livery_interactive` query parameter can be replaced with any URL and that URL will be loaded in the iFrame.

### Web component

The project's build flow is set up to generate a package that gets published to NPM that can then be loaded by the video player. This package injects the interactive client into a custom element added by the video player.

Package URL: https://www.npmjs.com/package/@liveryvideo/interactive

Example test URLs:

- Beta: https://beta.d3laskrvv57qvc.amplifyapp.com/?livery_interactive=latest;dev-stable;____8SDWDJfHfXtGwM0AAA==
- Embed: https://embed.livery.live/?id=5ddb98f5e4b0937e6a4507f2&v=beta&livery_interactive=latest;dev-stable;____8SDWDJfHfXtGwM0AAA==

The `livery_interactive` query parameter is split into `<package version>;<region>;<tenant ID>`. Package version is the version published to NPM or `latest`. Region is the environment name that the backend is hosted on (for example dev-stable for backend.dev-stable.interactive.livery.live). Tenant ID is the id of the tenant to be used.

## Contributors

Contributors names and contact info

- [Eugene Sternin](eugene@exmachina.nl)
- [Oleg Makushev](oleg@exmachina.nl)
- [Sander van den Brink](sander@exmachina.nl)
- [Michael Adam Lockwood](adam@exmachinagroup.com)
- [Tyler Pepper](tyler@exmachina.nl)

## License

This project is licensed under the MIT License
