Apps, Stacks & Constructs


The diagram above illustrates a high level overview of the AWS CDK.

At its core is the App.


  • An application written in TypeScript, JavaScript, Python, Java, or C# that uses the AWS CDK to define AWS infrastructure

  • It defines 1 or more Stacks


  • Unit of deployment within the AWS CDK

  • Any number of stacks can be defined for an App

  • Stacks contain Constructs


  • Represents a reusable AWS cloud resource .e.g. S3 Bucket, EC2 Instance, IAM Role, DynamoDB Table..

  • A Stack can contain 1 or more Constructs

  • Encapsulates everything AWS CloudFormtion requires to create cloud infrastructure


You will notice the use of CloudFormation here.

The AWS CDK is a development framework for defining AWS cloud infrastructure in code.

CloudFormation provides the mechanism for provisioning the cloud infrastructure.

Further reading

AWS CDK key concepts

AWS Solutions Constructs – A Library of Architecture Patterns for the AWS CDK

Last updated on 23 Jun 2020
Published on 23 Jun 2020