gitmyhub

aws-cdk

TypeScript ★ 13k updated 1d ago

The AWS Cloud Development Kit is a framework for defining cloud infrastructure in code

Framework that lets developers define AWS cloud infrastructure using TypeScript, Python, Java.NET, or Go code, which then compiles into AWS CloudFormation templates for deployment.

TypeScriptPythonJava.NETGoAWS CloudFormationsetup: moderatecomplexity 3/5

The AWS Cloud Development Kit (AWS CDK) is a framework that lets developers describe cloud infrastructure using regular programming languages instead of configuration files. Rather than writing long YAML or JSON templates by hand, you write code in TypeScript, Python, Java, .NET, or Go that describes which cloud resources you want, and the CDK converts that code into the underlying configuration AWS needs to create them.

The core idea is that your infrastructure lives in the same codebase as your application. You group related resources into units called constructs (for example, a queue connected to a notification topic), then combine constructs into stacks, and stacks into a full CDK app. The CDK provides a library of ready-made constructs for every major AWS service so you can wire things together quickly rather than specifying every configuration detail yourself.

A command-line tool (the CDK CLI) does the actual work of converting your code into AWS CloudFormation templates, deploying them to your AWS account, and showing you a diff of what will change before you apply anything. The workflow is: write code, run "cdk synth" to see the generated template, run "cdk diff" to compare against what is already deployed, and run "cdk deploy" to push the changes.

The project is open source and maintained by AWS. Community contributions are accepted via pull requests. AWS also collects anonymous usage metrics by default, though this can be turned off by following the instructions in their developer guide.

Where it fits