- Create an AWS user with the following permissions
- API Gateway / Full access / All resources
- API Gateway V2 / Full access / All resources
- CloudFormation / Full access / All resources
- DynamoDB / Full access / All resources
- IAM / Full access / All resources
- Lambda / Full access / All resources
- S3 / Full access / All resources
- The user must have programatic access (AccessKey/Secret)
- Install node/npm https://nodejs.org/en/download/
- Install the aws-cli https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html
- Install the cdk-cli https://docs.aws.amazon.com/cdk/latest/guide/work-with-cdk-typescript.html
- Run
aws configure
and set the credentias of the user created above. - Run
cdk bootstrap
- Navigate to the root of the project and run the following commands
cd api npm install npm run deploy
- After the deploy is complete the system will output the api endpoint, copy this value to the
ApiStack.RestApiEndpoint0551178A = https://this.is.an.example/prod/
- Copy the value of ApiStack.RestApiEndpoint into the key apin.endopoint of the file app/src/environments.ts
- Build the website:
npm run build-website npm run deploy
- Unit test API
- Integration test
- Accept custom ids
- Improve ID generation
- Collision handling/retries
- 301 Browser redirect
- Validate inputs in the API side
- Ease deployment (automaticaly update endpoint)
- Automate the deployment.
- Create a CDK Role
- Throtling/retries
- API authentication
- No public bucket
- Organize repository (src/ dist/)