Overview • Setup • Build • Deploy • Cleanup •
This is an experimental example. It may not build out of the box
This examples is built on an Amplify project marked "Experimental" and may not be updated for latest breaking changes.
It additionally requires infrastructure prerequisites that must be created before successful build.
If build is unsuccessful, please create an issue so that we may debug the problem
Public speaking skills are fundamental for professional development, regardless of industry. Dry-runs and feedback are vital to improve communication and build leadership skills. It can be difficult to get quantifiable, unbiased and actionable insights when dry-running alone. While rehearsing in front of others can offer valuable feedback, finding a human audience can be intimidating, time-consuming and may not always be feasible.
aws-presentation-evaluation-tool is a scalable solution that integrates ML services with video streaming in order to extract insights that define a successful presentation (i.e. words-per-minutes, eye contact, filler words, weasel words, and more.). Using services such as Transcribe, Comprehend and models such as PoseNet, aws-presentation-evaluation-tool analyzes presenters and generates instant reports that provides insights into user presentations, as well as real-time prompts on areas to improve.
Before deploying this application, you will need to install the Amplify CLI and the AWS Cloud Development Kit (CDK).
Since this application builds and packages a Python Lambda function, you may also need to install Python 3.8, virtualenv, and pipenv.
Clone the repo:
git clone https://github.com/aws-samples/aws-presentation-evaluation-tool.git .
Change the bucket name in amplify/backend/hosting/S3AndCloudFront/parameters.json
from <S3-BUCKET-NAME>
to a name of your choosing according to the S3 bucket naming rules.
To build this app, you need to be in this project's root folder. Then run the following:
cd aws-presentation-evaluation-tool
npm install --legacy-peer-deps
amplify init
This will install the necessary JavaScript packages and bootstrap the Amplify environment for deployment.
Run amplify publish
. This will deploy / redeploy your Amplify to your AWS Account.
After the deployment you will see the Amplify URL, which represents the url hosting the web app.
Happy presenting :)
-
Run
amplify delete
. This will delete Amplify-deployed resources from your AWS Account. -
Confirm that the S3 bucket from the
Setup
step and Amplify deployment (amplify-projectname-envname-12345-deployment
) bucket has been emptied and deleted in the S3 console. -
Delete the
WellPresentedSTS
IAM role anduseTranscribeComprehend
IAM policy in the IAM console. -
Empty the log groups associated with the Amplify project. Their names will be formatted as
/aws/lambda/amplify-proejctname-LogGroup-abcde1234
.