This example is a trivial prototype of a video interview app. It’s just enough to demonstrate how to use custom JavaScript to record video, integrate the JavaScript controls with Anvil UI, create an HTTP REST API to receive the video file generated via JS, and save that file in the Anvil database. It also demonstrates form validation with the Anvil Validate module, as well as Anvil user authentication. Each piece of the app is just a few lines of code.
https://anvil.works/build#clone:7BXAM23WUYPU22GT=ADFHKFKNS42H3DSHN5KQDKX7
https://anvil.works/build#clone:PUWTOLYZVOBBI2FX=OVX2B6LQXZU4QW3XOQEIQUW7
The second link is a barebones admin CRUD interface which allows fictitious hiring reviewers to access recorded videos, give applicants a rating of 1-9, and send follow-up emails to applicants that have been selected (it also displays which applicants have been sent follow-up emails).
When you sign in to the interview app, just create an account with email and password, or with Google sign in - it’s currently set to not require any account approval.
This example has only been tested to record video in Chrome and Edge on Windows, and Chrome on Android. I’m aware that the JS currently doesn’t work on iOS - the point was not to make an industrial quality video interview system, but to provide the simplest possible tutorial example which demonstrates how to integrate the custom JS and API parts with Anvil in a just a few lines of code.