Build a Photo-Sharing Web App with AWS Amplify and AWS AppSync

Srushith R (KonfHub)

7th March (10:00AM to 5:00PM), Radisson Blu, Bangalore

What is covered

In this workshop, we'll use React to build a data-driven web app that lets users upload photos to secure photo galleries. We'll use AWS AppSync to get up and running quickly with a GraphQL API that backs our data in Amazon DynamoDB. In addition, we'll demonstrate how to use the AWS Amplify library to authenticate users, communicate with our API, and manage photo uploads. Finally, we add in AI-powered object tagging using Amazon Rekognition with tag search provided using Amazon Elasticsearch Service, allowing users to discover photos by AI detected labels without any manual data entry.

What we’ll build

  • Allowing user sign up and authentication, so we know who owns which photo albums
  • Building an API server, so our front end has a way to load the appropriate albums and photos to show a given user
  • Storing data about albums, photos, and permissions of who can view what, so that our API has a fast and reliable place to query and save data to
  • Storing and serving photos, so we have a place to put all of the photos that users are uploading to albums
  • Automatically creating photo thumbnails, so we don’t need to deliver full-resolution photos when users browse a photo album’s list of photos
  • Automatically detecting relevant labels for each uploaded photo and making photos searchable based on these labels

Services used

We’ll use a number of these services and tools in our solution, including:

If any or all of these services are new to you, don’t worry. We’ll cover everything you need to know to get started using everything mentioned above.


AWS Account: In order to complete this workshop you'll need an AWS Account with access to create the above mentioned AWS services. See the AWS Free Tier page for more details.

Essential JavaScript, HTML/CSS, React knowledge: Working knowledge is needed on these for this workshop.

Card image cap

Srushith R

Head of Engineering, KonfHub Technologies LLP

Srushith Repakula is the Head of Engineering at KonfHub Technologies, Bangalore. a software development & consulting company in Bangalore. He was instrumental in building the serverless conference discovery and hosting platform KonfHub ( from its inception. Building KonfHub, a one stop platform for technical conferences on AWS stack, primarily using serverless and other associated services. Got the first taste of Serverless by participating in the “AWS Chatbot Challenge” and fell instantly in love with the technology and the unparalleled passion for Lambdas henceforth began. Regularly speaking at conferences and meetups in the serverless community and sharing knowledge, production experiences and real life challenges.