Index:
-
Webapp:
- DNS (Route53): how to set up DNS?
- create CDK record set (optional, we may not have access to a domain)
- CDN (CloudFront): How to distribute assets across the globe?
- create CDK distribution
- Hosting (S3): where to store app assets?
- create CDK code for bucket
- create npm command to build
- ng build
- upload /dist/app to S3
- invalidate CDN cache
- Access Control (Cognito): How to secure app?
- Cognito hosted UI.
- create CDK user pool and hosted UI
- Handled by app.
- mention how custom auth might be implemented
- Cognito hosted UI.
- DNS (Route53): how to set up DNS?
-
REST API:
- API (ClaudiaJS):
- create api and respective envs
- /orders with [POST, PATCH, GET]
- API Access Control (Cognito authorizer):
- create the cognito authorizer
- add authorizer to private endpoints
- Infrastructure as code (CDK and CloudFormation):
- orders table (dynamo)
- processing orders queue (sqs)
- user notification (sns)
- Queued orders: Chalice (python)
- create a lambda triggered by sqs
- create a lambda triggered by dynamo that nofify users using sns
- API (ClaudiaJS):
-
Database:
- DynamoDB: Powerful Key Value store
- Neptune: create graphs and networks
- TimeStream: time series store
-
Analytics: 1.
-
Observability:
- Cloud Watch stack:
- logs
- logs insights
- x-rays
- Cloud Watch stack: