This AWS CDK App deploys the backend infrastructure for the Dining by Friends GraphQL API to AWS CloudFormation. It consists of the following constructs:
- A Cognito User Pool for authenticating users
- An Amazon VPC with 2 Private Subnets and a Security Group to create the database in
- An Amazon Neptune graph database to store the data for the api
- A Lambda function to add a new user's data to the database when he/she confirms his/her email after signing up
- An AppSync GraphQL API to get data from or update the data in the database
- A Lambda function connected to a Lambda Data Source of AppSync to synchronously read data from Neptune DB
- An HTTP Data Source of AppSync to put the mutation data on the default EventBridge bus
- A Lambda function to perform the mutation on the Neptune DB asynchronously
- An EventBridge rule to envoke the lambda function to perform the mutation