48. Building a File Transfer application on AWS - Live coding PART 1
https://youtu.be/EfRElTYilyY
How can you build a WeTransfer or a Dropbox Transfer clone on AWS?
This is our first live coding stream. In this episode, we started a new challenge: building a product live on AWS!
In this first issue, we managed to implement a very simple MVP using S3, API Gateway, and Lambda.
All our code is available in this repository: https://github.com/awsbites/weshare.click
Chapters:
00:00 Intro
04:11 Architecture diagram
08:08 Setting up the project (npm, license, gitignore, eslint)
17:10 Scaffolding a Serverless project
24:05 Creating a bucket using serverless.yml
48:40 Writing our first lambda function
57:48 Using the AWS SDK V3 for generating S3 pre-signed URLs
01:12:00 Passing environment variables and setting up policies for our Lambda function
01:19:15 Deploying a Serverless project to AWS
01:43:00 Testing our endpoint
01:47:06 Wrapping up
We set ourselves up for a challenge and in this series of live streams we will try to incrementally build a simple clone of WeTransfer or Dropbox Transfer that would allow us to upload files and share them by URL.
Everything is up for discussion (and your opinion is important!) but right now we are expecting to be using S3, Lambda, API Gateway, Route53, and tons of Node.js!
Come and join us on this awesome project! 🤩
All the episodes of this series:
- 🗒 Full playlist: https://www.youtube.com/watch?v=EfRElTYilyY&list=PLAWXFhe0N1vI1_z-06EzJ22pz95_gBrId
- PART 1: https://youtu.be/EfRElTYilyY (MVP with Lambda, API Gateway, and S3)
- PART 2: https://youtu.be/4wCX32YUtMk (Custom domain with Route53 and Content-Disposition)
- PART 3: https://youtu.be/hlW_RwRgskI (Observability best practices with Middy and Lambda Power Tools + CLI Application)
- PART 4: https://youtu.be/vVic3oqqqfY (Adding authentication using Cognito and implementing the OAuth 2 device flow)
- PART 5: https://youtu.be/0TzfkbisMEA (OAuth 2 device flow and DynamoDB Single Table Design)
- PART 6: https://youtu.be/b-FoqIcOcPw (Completing OAuth 2 device flow and Adding a login command to the CLI application)
#AWS #Lambda #Serverless