Professional Documents
Culture Documents
AWS CaseStudy Assignment-Ayush
AWS CaseStudy Assignment-Ayush
Ayush Kumar
SD
ayush.kumar01@quantiphi.com
Problem statement-
Problem Statement
Use AWS and develop a Simple Serverless application to Upload Files to S3
(This example is explained with AWS but you can also work with GCP with equivalent GCP
tools)
Serverless Application:
Frontend: React.js App - Deploy in S3, (Optional - Deploy CloudFront in Front of S3). Option to
host Frontend - AWS Amplify Service
Backend: Python with Lambda, API gateway - (Get, Put) to upload some objects in to S3 from
application.
(Optional: Create Aurora Serverless/MySQL RDS/DynamoDB (Any DB which is available in free
tier or cost effective))
(Optional: Upon object upload in S3, It should trigger and lambda and update object name in DB.
DB table can be flexible and have minimal records such as Sr No, Object Name, File
Type/Extension) Infra Deployment: Using CloudFormation
There should be a FrontendApp where you can upload files directly to S3. This should be
facilitated using Lambda. Once file uploaded to S3, these information should be recorded in DB
and Reverts and status to Frontend
Request Flow: User -> Browser (FrontendApp)-> Uploads File -> Request goes to API gateway ->
Lambda gets called -> Lambda Uploads file to S3 -> Lambda Connects DB and inserts records
details -> Reverts and status to Frontend -> Frontend Shows Upload Status.
Solution-
Architecture Flow of the
assignment
Screenshots-
Frontend view
File Selection:-