Immutable templates contains a collection of CDK templates. The respective CloudFormation templates will be stored in here as soon as they will be ready to be shipped - updated
The available architectures are the following:
- Static Website: creates a static site hosted on AWS Simple Storage Service, served throught the help of AWS Cloudfront and shipped with CI/CD powered by AWS Codepipeline.
- Contact Form: creates the serverless infrastructure required to build a contact form by using AWS API Gateway, AWS DynamoDB with DynamoStream and AWS Simple Notification Service.
- Upload Form: creates the serverless infrastructure required to build an upload form by using AWS API Gateway, AWS Lambda and AWS Simple Storage Service.
- Producer/Consumer: creates the serverless infrastructure following the producer/consumer schema using AWS API Gateway, AWS Lambda, AWS Simple Storage Service and AWS Simple Queue Service.
- Document Reader: creates a serverless infrastructure to build OCR application that produce spoken text extracted from images you can provide throught REST API by using many services like AWS API Gateway, AWS Lambda, AWS Simple Storage Service, AWS Simple Queue Service, AWS DynamoDB, AWS Rekognition and AWS Polly, to provide text-to-speach functionality;
To use the stack and modify them, just clone the repository and move to the desired stack folder under the templates
directory in the root of the repository. For example, if you are interested in the static-website
stack, just do the following:
git clone https://github.com/made2591/immutable.templates
cd immutable.templates/templates/static-website
# start deploy (see later)
You will find an always updated list of the current available stacks in the section Available Arhictectures of this document.
The only needed tool is Node.js - ≥ 8.11.x - and the AWS Cloud Development Kit - AWS CDK. You can install it by running
$ npm i -g aws-cdk
Just as any other CDK stack, this are the main commands that can help you with the most common actions:
npm run build
compile typescript to jsnpm run watch
watch for changes and compilecdk deploy
deploy this stack to your default AWS account/regioncdk diff
compare deployed stack with current statecdk synth
emits the synthesized CloudFormation template
Please read CONTRIBUTING.md for details on how to contact me.
Almost all the stacks proposed in this repository, and their implementation, are deeply discussed between people below:
- Matteo Madeddu - Design, Implementation - Github, LinkedIn
- Guido Nebiolo - Design, Implementation - Github, LinkedIn
Thank you for your interest!
This project is licensed under the MIT License - see the LICENSE.md file for details.
- Fix architecture schemas
- Inspiration
- etc