This is intended to be a repo containing all of the official AWS Serverless architecture patterns built with CDK for developers to use.
Follow @CdkPatterns for live discussion / new pattern announcements. I plan to add a new pattern weekly so check back regularly!
Note, this is maintained by @nideveloper not AWS
- To learn more visit the AWS getting started guide
- To do a workshop on CDK visit cdkworkshop.com
- Visit the Hey CDK "How To" series for some detailed answers
- Check out Awesome CDK for a curated list of awesome projects related to CDK
All Patterns (unless otherwise stated in their readme) should support the same commands so you can just run:
git clone https://github.com/cdk-patterns/serverless.git
cd {pattern-name}/typescript
npm i
- install the dependenciesnpm run build
- build the projectnpm run test
- run the unit testsnpm run deploy
- deploy the pattern into your AWS account*
* Note this requires you to be using cloud9 or have ran aws configure to setup your local credentials
npm install -g aws-cdk
git clone https://github.com/cdk-patterns/serverless.git
cd {pattern-name}/python
python -m venv .env
- Create a virtual envsource .env/bin/activate
- Activate the virtual envpip install -r requirements.txt
- Install the dependenciescdk synth
- generate a cft from the stack to validate your setupcdk deploy
- deploy the pattern into your AWS account*
* Note this requires you to be using cloud9 or have ran aws configure to setup your local credentials
Matt Coulter Patterns (@nideveloper)
These are built using https://www.npmjs.com/package/cdk-spa-deploy
Jeremy Daly Patterns (@jeremy_daly)
These patterns are from https://www.jeremydaly.com/serverless-microservice-patterns-for-aws/
Eric Johnson Patterns (@edjgeek)
This was taken from this Tweet
Building enterprise applications using Amazon DynamoDB, AWS Lambda, and Go by Geoffroy Rollat
Found via this tweet
Sebastian Müller (@sbstjn)
Found via this tweet
I hope for this to be something the whole cdk community contributes to so feel free to fork this repo and open up a pull request. For full details see our Contributing Guidelines