In this project, we build a completely serverless video sharing web-site, complete with:
- User authentication
- Large file video uploads
- A transcoding pipeline, that transcodes uploaded videos to web-friendly 480p mp4 format
- Push-based, event-driven updates to the web-site. Users see new videos automatically, no browser refreshes needed
- The ability to play video files hosted on scalable cloud storage.
There are 5 lessons.
- Lesson 1 - Create a serverless transcoding pipeline in AWS
- Lesson 2 - Setup the web site & user authentication (Auth0)
- Lesson 3 - Create an API in the AWS cloud & authenticate calls
- Lesson 4 - Enable browser-based uploads of video files to S3
- Lesson 5 - Connect firebase to list videos
To get started, clone this repository to your local machine (or download it as a ZIP file).
There is a folder for each lesson. Each lesson contains a PDF document of instruction on how to complete the lesson.
In this workshop you'll need to upload videos to the cloud. Since videos can be large, we've trimmed some Hollywood movies trailers to about 5-10 seconds each, to keep the file size relative small:
Download sample movie trailers
Serverless Architectures on AWS is our book that covers serverless architectures in more detail. It is a great companion to this course as it provides more depth to everything we have learnt today. It is recommended if you want to explore serverless architectures further.