There's youtube downloader at home

Resources

Basic flow diagram

Worker Processing

Queue Layer

API Layer

File Exists

File Doesn't Exist

More than 40MB

≤40MB

API

Queue Job in SQS

Return Immediate Response

SQS Queue

Worker

Parse Request

Check S3 for Existing File

Get File from S3

Send Email with Attachment/Download Link

Download from YouTube

File Size Check

Process Large File

FFmpeg Conversion

Upload to S3

Send Download Link via Email

FFmpeg Conversion

Send Email with Attachment

Upload to S3

End Job

Error Handler

Send Error Email

User