AWS CDK Features
AWS Construct Library
The AWS Construct Library is the largest collection of infrastructure components for AWS. It includes three levels of constructs: L1 (low-level CloudFormation resources), L2 (curated resources with sensible defaults), and L3 (patterns for common architectures like serverless apps, CI/CD pipelines, and EKS clusters).
Language Support
CDK supports TypeScript, JavaScript, Python, Java, C#, and Go. Developers define AWS infrastructure using the same programming languages they use for application code, benefiting from IDE support, type checking, and package management.
CloudFormation Integration
CDK synthesizes CloudFormation templates, leveraging AWS CloudFormation's mature deployment engine. This provides drift detection, change sets, stack policies, and cross-account deployments. CDK also integrates with CloudFormation StackSets for multi-region deployments.
CDK Pipelines
CDK Pipelines is a high-level construct library for building CI/CD pipelines that deploy CDK applications. It automates the build, synth, and deploy stages, with support for self-mutation, cross-account deployments, and manual approval gates.
Testing Framework
CDK includes the Assertions module for writing unit and integration tests for infrastructure code. Developers can verify that their CDK applications produce the expected CloudFormation templates using fine-grained assertions.