Header menu logo FsCDK

FsCDK Namespace

Type/Module Description

AccessPointBuilder

AccessPointConfig

AccessPointSpec

AlarmWidgetBuilder

AlarmWidgetConfig

ALBBuilder

ALBBuilders

ALBConfig

High-level Application Load Balancer builder following AWS security best practices. **Default Security Settings:** - Internet-facing = false (internal by default for security) - HTTP/2 = enabled - Deletion protection = false (can be enabled for production) - Drop invalid headers = true (security best practice) **Rationale:** These defaults follow AWS Well-Architected Framework: - Internal ALBs by default prevent accidental public exposure - HTTP/2 improves performance - Dropping invalid headers prevents header injection attacks **Escape Hatch:** Access the underlying CDK ApplicationLoadBalancer via the `LoadBalancer` property for advanced scenarios not covered by this builder.

ALBListenerBuilder

ALBListenerConfig

High-level ALB Listener builder following AWS best practices. **Default Settings:** - Protocol = HTTP - Port = 80 - Default action = fixed response (503) **Rationale:** - Fixed response by default prevents unhandled requests - Explicit target group configuration required

ALBListenerResource

ALBSpec

ALBTargetGroupBuilder

ALBTargetGroupConfig

High-level ALB Target Group builder following AWS best practices. **Default Settings:** - Protocol = HTTP - Port = 80 - Target type = IP (for Fargate) - Deregistration delay = 30 seconds - Health check enabled with sensible defaults **Rationale:** - IP target type required for Fargate tasks - Shorter deregistration delay improves deployment speed - Health checks ensure traffic only goes to healthy targets

ALBTargetGroupResource

ApiGatewayBuilders

AppBuilder

AppBuilders

AppConfig

AppRunnerBuilders

AppRunnerHelpers

Helper functions for App Runner operations

AppRunnerServiceBuilder

AppRunnerServiceConfig

High-level AWS App Runner service builder following AWS best practices. **Default Settings:** - Auto-scaling = 1-10 instances - Memory = 2 GB - vCPU = 1 - Port = 8080 - Health check = /health **Rationale:** App Runner provides fully managed container hosting similar to Azure App Service. These defaults follow AWS Well-Architected Framework: - Sensible scaling limits for cost control - Standard health check endpoint - Container-first approach **Use Cases:** - Containerized web applications - REST APIs - Background workers - Microservices **Escape Hatch:** Access the underlying CDK CfnService via the `Service` property for advanced scenarios not covered by this builder.

AppRunnerServiceSpec

AppSyncApiBuilder

AppSyncApiConfig

High-level AWS AppSync (GraphQL API) builder following AWS best practices. **Default Settings:** - AuthorizationMode = API_KEY (for development) - XrayEnabled = true (distributed tracing) - LogLevel = ALL (comprehensive logging) **Rationale:** These defaults follow Yan Cui's GraphQL API recommendations: - AppSync provides managed GraphQL with subscriptions - Built-in caching and offline support - Better than API Gateway for complex mobile/web apps - X-Ray tracing for debugging **Use Cases:** - Mobile applications (iOS, Android) - Real-time web applications - Offline-first applications - Complex data fetching requirements - GraphQL subscriptions **Escape Hatch:** Access the underlying CDK GraphqlApi via the `GraphqlApi` property for advanced scenarios not covered by this builder.

AppSyncApiSpec

AppSyncBuilders

AppSyncDataSourceBuilder

AppSyncDataSourceConfig

AppSync Data Source Configuration

AppSyncDataSourceSpec

AppSyncHelpers

Helper functions for AppSync operations

AutoVerifiedAttrsBuilder

AutoVerifiedAttrsConfig

BastionHostBuilder

BastionHostBuilders

BastionHostConfig

High-level Bastion Host builder following AWS security best practices. **Default Security Settings:** - Instance type = t3.nano (minimal compute for SSH access) - Machine image = Amazon Linux 2023 - Requires IMDSv2 = true (enhanced security) - Subnet type = PUBLIC (for external SSH access) **Rationale:** These defaults follow AWS Well-Architected Framework: - t3.nano is cost-effective for bastion workloads - Amazon Linux 2023 has latest security patches - IMDSv2 prevents SSRF attacks against instance metadata - Public subnet placement allows external access **Security Note:** Bastion hosts should use strict security groups and key-based authentication. Consider AWS Systems Manager Session Manager as a more secure alternative. **Escape Hatch:** Access the underlying CDK BastionHostLinux via the `BastionHost` property for advanced scenarios not covered by this builder.

BastionHostSpec

BucketBuilder

BucketConfig

High-level S3 Bucket builder following AWS security best practices. **Default Security Settings:** - BlockPublicAccess = BLOCK_ALL (prevents public access) - ServerSideEncryption = SSE-KMS with AWS managed key (aws/s3) - Versioning = disabled (opt-in via versioned operation) - EnforceSSL = true (requires HTTPS for all requests) **Rationale:** These defaults follow AWS Well-Architected Framework security pillar: - Encryption at rest protects data from unauthorized access - Blocking public access prevents accidental data exposure - SSL/TLS enforcement protects data in transit - KMS provides audit trails and key rotation capabilities **Escape Hatch:** Access the underlying CDK Bucket via the `Bucket` property on the returned resource for advanced scenarios not covered by this builder.

BucketMetricsBuilder

BucketMetricsConfig

BucketPolicyBuilder

BucketPolicyBuilders

BucketPolicyConfig

High-level S3 Bucket Policy builder following AWS security best practices. **Default Security Settings:** - No default statements (explicit policy definition required) - Applies to specific bucket only **Rationale:** These defaults follow AWS Well-Architected Framework security pillar: - Principle of least privilege requires explicit permissions - No default deny-all to allow incremental policy building - Bucket-specific policies prevent accidental broad access **Best Practices:** - Deny HTTP requests (enforce HTTPS) - Restrict access by IP address when possible - Use condition keys to limit access - Apply MFA delete for critical buckets **Escape Hatch:** Access the underlying CDK BucketPolicy via the `Policy` property for advanced scenarios not covered by this builder.

BucketPolicySpec

BucketPolicyStatements

BucketSpec

CertificateBuilder

CertificateConfig

High-level Certificate Manager builder following AWS security best practices. **Default Security Settings:** - Validation method = DNS (more secure than email validation) - Key algorithm = RSA_2048 (industry standard) - Transparency logging = enabled (default AWS behavior) **Rationale:** These defaults follow AWS Well-Architected Framework security pillar: - DNS validation is automated and doesn't rely on email - RSA_2048 provides strong encryption with broad compatibility - Certificate transparency helps detect mis-issuance **Use Cases:** - HTTPS for CloudFront distributions - HTTPS for Application Load Balancers - Custom domain names for API Gateway **Escape Hatch:** Access the underlying CDK Certificate via the `Certificate` property for advanced scenarios not covered by this builder.

CertificateManagerBuilders

CertificateSpec

CloudFrontBehaviors

Factory helpers to build common IBehaviorOptions for S3 and HTTP origins. These helpers are useful if you prefer to construct behaviors and pass them via defaultBehavior/additionalBehavior.

CloudFrontBuilders

CloudHSMBuilders

CloudTrailBuilder

CloudTrailBuilders

CloudTrailConfig

High-level CloudTrail builder following AWS security best practices. **Default Security Settings:** - IsMultiRegionTrail = true (captures events from all regions) - IncludeGlobalServiceEvents = true (includes IAM, STS, CloudFront events) - EnableFileValidation = true (enables log file integrity validation) - ManagementEvents = ReadWriteType.ALL (logs all management events) - SendToCloudWatchLogs = true (enables CloudWatch Logs integration) **Rationale:** CloudTrail provides audit logs of all AWS API calls, which is critical for: - Security incident investigation and forensics - Compliance requirements (HIPAA, PCI-DSS, SOC2, GDPR) - Detecting unauthorized access or privilege escalation - Meeting AWS Well-Architected Framework security pillar requirements Per "Security as Code" (O'Reilly): "Log all API calls with CloudTrail. This is non-negotiable for security monitoring." **Note on Costs:** The first trail recording management events is free. Additional trails or data events incur charges. CloudWatch Logs integration has additional costs but provides real-time monitoring capabilities.

CloudTrailSpec

Represents a CloudTrail trail specification after configuration.

CloudWatchAlarmBuilder

CloudWatchAlarmConfig

High-level CloudWatch Alarm builder for monitoring AWS resources. Supports common metrics and custom metric creation.

CloudWatchAlarmSpec

CloudWatchBuilders

CloudWatchCanaryBuilder

CloudWatchCanaryConfig

High-level CloudWatch Synthetics Canary builder following AWS best practices. **Default Settings:** - Runtime = Synthetics Python 3.10 - Schedule = Every 5 minutes - Timeout = 60 seconds - Memory = 960 MB - Active tracing = enabled (X-Ray) **Rationale:** These defaults follow AWS Well-Architected Framework: - Python runtime provides flexibility and ease of use - 5-minute checks balance cost and availability monitoring - Active tracing helps debug canary failures - Memory sized for typical HTTP/HTTPS checks **Use Cases:** - Website uptime monitoring - API endpoint health checks - User workflow validation - Multi-step transactions **Escape Hatch:** Access the underlying CDK Canary via the `Canary` property for advanced scenarios not covered by this builder.

CloudWatchCanaryResource

CloudWatchLogGroupBuilder

CloudWatchLogGroupConfig

High-level CloudWatch Log Group builder following AWS best practices. **Default Security Settings:** - Retention = 7 days (cost-effective default, change for compliance) - Removal policy = DESTROY (logs cleaned up on stack deletion) - Encryption = AWS managed key (optional customer managed key) **Rationale:** These defaults follow AWS Well-Architected Framework: - 7-day retention balances observability and cost - DESTROY removal policy prevents orphaned log groups - Encryption at rest protects sensitive log data **Escape Hatch:** Access the underlying CDK LogGroup via the `LogGroup` property for advanced scenarios not covered by this builder.

CloudWatchLogGroupSpec

CloudWatchLogsBuilders

CloudWatchLogsFilterBuilders

CloudWatchLogsHelpers

Helper functions for CloudWatch Logs

CloudWatchMetricFilterBuilder

CloudWatchMetricFilterConfig

Configuration for CloudWatch Metric Filter. Extracts metrics from log events based on pattern matching. **Use Cases:** - Extract custom business metrics from application logs - Monitor error patterns and frequencies - Track specific application events - Create alarms on log-based metrics **Best Practices:** - Use structured logging (JSON) for easier pattern matching - Test filter patterns with CloudWatch Logs Insights - Set appropriate metric units - Use metric namespaces to organize custom metrics

CloudWatchMetricFilterSpec

CloudWatchSubscriptionFilterBuilder

CloudWatchSubscriptionFilterConfig

Configuration for CloudWatch Subscription Filter. Streams log events to destinations in real-time. **Common Destinations:** - Lambda functions (for log processing) - Kinesis streams (for log aggregation) - Kinesis Firehose (for S3 archival) - OpenSearch (for log analytics) **Production Use Cases:** - Stream logs to centralized logging (ELK, Splunk) - Real-time log processing and alerting - Security event monitoring (SIEM integration) - Compliance log archival **Best Practices:** - Use filter patterns to reduce unnecessary data transfer - Consider costs for high-volume log streaming - Set appropriate IAM permissions for destinations - Monitor subscription filter delivery failures

CloudWatchSubscriptionFilterSpec

CloudWatchSyntheticsBuilders

CloudWatchSyntheticsHelpers

Helper functions for CloudWatch Synthetics

CognitoBuilders

ContainerDefinitionConfig

ContainerDefinitionHelper

CorsRuleBuilder

CorsRuleConfig

CustomResourceBuilder

CustomResourceBuilders

CustomResourceConfig

High-level Custom Resource builder for one-time deployment tasks. **Default Settings:** - Timeout = 5 minutes - Remove on update = true (cleanup on changes) **Rationale:** Custom Resources provide deployment-time execution similar to Azure Deployment Scripts. These defaults follow AWS Well-Architected Framework: - Reasonable timeout for typical init tasks - Automatic cleanup prevents resource leaks **Use Cases:** - Database migrations and seeding - DNS record creation - Third-party API calls - Certificate validation - Resource initialization **Escape Hatch:** Access the underlying CDK AwsCustomResource via the `CustomResource` property for advanced scenarios not covered by this builder.

CustomResourceHelpers

Helper functions for Custom Resource operations

CustomResourceSpec

DashboardBuilder

DashboardBuilders

DashboardConfig

High-level CloudWatch Dashboard builder following AWS monitoring best practices. **Default Settings:** - Dashboard name = construct name - Period for metrics = 5 minutes (good balance of granularity and cost) - Widgets arranged in rows and columns **Rationale:** These defaults follow AWS Well-Architected Framework operational excellence pillar: - Clear dashboard names improve discoverability - 5-minute periods provide good visibility without excessive cost - Structured layout improves readability **Best Practices:** - Organize related metrics together - Use alarms to highlight critical issues - Include both system and business metrics - Set appropriate Y-axis ranges for clarity **Escape Hatch:** Access the underlying CDK Dashboard via the `Dashboard` property for advanced scenarios not covered by this builder.

DashboardSpec

DatabaseInstanceBuilder

DatabaseInstanceConfig

DatabaseInstanceSpec

DatabaseProxyBuilder

DatabaseProxyConfig

High-level RDS Proxy builder following AWS best practices. **Default Settings:** - Debug logging = false (opt-in for troubleshooting) - IAM authentication = true (recommended for security) - Require TLS = true (enforce encrypted connections) - Idle timeout = 30 minutes **Rationale:** RDS Proxy provides connection pooling and improves failover times. IAM authentication removes the need for password management.

DatabaseProxyProxyTargetConfig

DatabaseProxySpec

DeadLetterBuilder

DeadLetterConfig

DistributionBuilder

DistributionConfig

DistributionSpec

DnsValidatedCertificateBuilder

DnsValidatedCertificateConfig

DnsValidatedCertificateSpec

DockerImageFunctionBuilder

DockerImageFunctionBuilders

DockerImageFunctionConfig

DockerImageFunctionSpec

DocumentDBBuilders

DocumentDBClusterBuilder

DocumentDBClusterConfig

High-level Amazon DocumentDB (MongoDB-compatible) cluster builder following AWS best practices. **Default Settings:** - Engine = docdb - Instance class = db.t3.medium - Instances = 1 (single instance for dev) - Port = 27017 (MongoDB default) - Backup retention = 7 days - Preferred backup window = 03:00-04:00 UTC - Encryption at rest = enabled - Deletion protection = disabled (for dev) **Rationale:** These defaults follow AWS Well-Architected Framework: - MongoDB compatibility for easy migration from Cosmos DB - T3.medium suitable for development and testing - Encryption enabled by default for security - Single instance reduces costs for non-production **Use Cases:** - Document database applications - Content management systems - User profiles and catalogs - Mobile and web applications - Migration from MongoDB or Cosmos DB **Escape Hatch:** Access the underlying CDK DatabaseCluster via the `Cluster` property for advanced scenarios not covered by this builder.

DocumentDBClusterSpec

DocumentDBHelpers

Helper functions for DocumentDB operations

DynamoDBBuilders

EC2Builders

EC2InstanceBuilder

EC2InstanceConfig

High-level EC2 Instance builder following AWS security best practices. **Default Security Settings:** - Instance type = t3.micro (cost-effective for dev/test) - Detailed monitoring = disabled (opt-in via monitoring operation) - IMDSv2 required = true (enhanced security for instance metadata) - EBS encryption = enabled by default **Rationale:** These defaults follow AWS Well-Architected Framework: - t3.micro provides good balance of compute/cost for many workloads - IMDSv2 prevents SSRF attacks against instance metadata - EBS encryption protects data at rest - Minimal IAM permissions follow least-privilege principle **Escape Hatch:** Access the underlying CDK Instance via the `Instance` property on the returned resource for advanced scenarios not covered by this builder.

EC2InstanceSpec

ECRBuilders

ECRHelpers

Helper functions for creating ECR lifecycle rules

ECRRepositoryBuilder

ECRRepositoryConfig

High-level ECR Repository builder following AWS best practices. **Default Security Settings:** - Image scan on push = enabled (security best practice) - Image tag mutability = MUTABLE (allows tag reuse for development) - Lifecycle policy = delete untagged images after 7 days - Encryption = AES256 (AWS managed encryption) - Removal policy = RETAIN (prevents accidental deletion) **Rationale:** These defaults follow AWS Well-Architected Framework: - Image scanning detects vulnerabilities automatically - Lifecycle policies reduce storage costs - Encryption at rest protects container images - RETAIN policy prevents accidental data loss **Escape Hatch:** Access the underlying CDK Repository via the `Repository` property for advanced scenarios not covered by this builder.

ECRRepositoryResource

ECSBuilders

ECSClusterBuilder

ECSClusterConfig

High-level ECS Cluster builder following AWS best practices. **Default Settings:** - Container Insights = ENABLED (monitoring and observability) - Execute command logging = enabled (for debugging) **Rationale:** Container Insights provides metrics and logs for troubleshooting. Use ContainerInsights.ENHANCED for more detailed monitoring.

ECSClusterSpec

ECSFargateServiceBuilder

ECSFargateServiceConfig

High-level Fargate Service builder for ECS. **Default Settings:** - CPU = 256 (.25 vCPU) - Memory = 512 MB - Desired count = 1 - Platform version = LATEST - Public IP = false (secure by default) **Rationale:** Fargate provides serverless container orchestration. Private networking by default enhances security.

ECSFargateServiceSpec

EfsFileSystemBuilder

EfsFileSystemConfig

EfsFileSystemSpec

EKSBuilders

EKSClusterBuilder

EKSClusterConfig

High-level EKS Cluster builder following AWS best practices. **Default Security Settings:** - Kubernetes version = latest stable - Endpoint access = PUBLIC_AND_PRIVATE - Cluster logging = enabled for all log types - Encryption = enabled with AWS managed key **Rationale:** These defaults follow AWS Well-Architected Framework: - Latest K8s version for security patches - Public and private access for flexibility - Comprehensive logging for troubleshooting - Encryption at rest for data protection **Escape Hatch:** Access the underlying CDK Cluster via the `Cluster` property for advanced scenarios not covered by this builder.

EKSClusterSpec

ElastiCacheBuilders

ElastiCacheHelpers

Helper functions for ElastiCache operations

ElastiCacheRedisConfig

High-level ElastiCache Redis cluster builder following AWS best practices. **Default Settings:** - Engine = Redis 7.0 - Node type = cache.t3.micro (free tier eligible) - Number of nodes = 1 (single node for dev) - Port = 6379 (Redis default) - Automatic failover = disabled (single node) - Encryption at rest = enabled - Encryption in transit = enabled **Rationale:** These defaults follow AWS Well-Architected Framework: - Redis 7.0 provides latest features and security - T3.micro suitable for development and testing - Encryption enabled by default for security - Single node reduces costs for non-production **Use Cases:** - Session storage - Application caching - Real-time analytics - Leaderboards and counters **Escape Hatch:** Access the underlying CDK CfnCacheCluster via the `CacheCluster` property for advanced scenarios not covered by this builder.

ElasticBeanstalkApplicationBuilder

ElasticBeanstalkApplicationConfig

High-level Elastic Beanstalk Application builder. **Rationale:** Elastic Beanstalk simplifies application deployment by managing infrastructure, auto-scaling, load balancing, and monitoring. **Note:** Elastic Beanstalk requires additional configuration via environments and configuration options for production use.

ElasticBeanstalkApplicationResource

ElasticBeanstalkBuilders

ElasticBeanstalkEnvironmentBuilder

ElasticBeanstalkEnvironmentConfig

High-level Elastic Beanstalk Environment builder. **Default Settings:** - Tier = WebServer - Solution stack = Latest (must be specified by user for actual deployment) **Rationale:** Environments represent deployments of your application. Configuration is highly dependent on the platform and application type.

ElasticBeanstalkEnvironmentSpec

ElasticCacheRedisBuilder

ElasticCacheRedisSpec

ElasticIPBuilder

ElasticIPBuilders

ElasticIPConfig

High-level Elastic IP builder following AWS best practices. **Default Settings:** - Domain = VPC (required for VPC instances) - No instance association by default (explicit attachment) **Rationale:** These defaults follow AWS Well-Architected Framework: - VPC is the standard domain for modern AWS architectures - Explicit association prevents accidental attachments - Static IPs are expensive, use only when necessary **Use Cases:** - NAT Gateways (automatic EIP allocation) - Static IPs for public-facing services - Whitelisting with third-party services **Escape Hatch:** Access the underlying CDK CfnEIP via the `ElasticIP` property for advanced scenarios not covered by this builder.

ElasticIPHelpers

Helper functions for Elastic IP operations

ElasticIPResource

EmailSubscriptionBuilder

EmailSubscriptionConfig

EnvironmentBuilder

EnvironmentBuilders

EnvironmentConfig

EventBridgeBuilders

EventBridgeRuleBuilder

EventBridgeRuleConfig

High-level EventBridge Rule builder following AWS best practices. **Default Security Settings:** - Enabled = true (rules are active by default) - Event bus = default event bus - Dead letter queue = not configured (opt-in for production) **Rationale:** These defaults follow AWS Well-Architected Framework: - Active rules by default to prevent misconfiguration - Default event bus for simplicity - DLQ opt-in allows users to handle failures explicitly **Escape Hatch:** Access the underlying CDK Rule via the `Rule` property on the returned resource for advanced scenarios not covered by this builder.

EventBridgeRuleSpec

EventBusBuilder

EventBusConfig

EventBusSpec

EventInvokeConfigBuilders

EventInvokeConfigOptionsBuilder

EventInvokeConfigOptionsConfig

EventSourceMappingBuilders

EventSourceMappingOptionsBuilder

EventSourceMappingOptionsConfig

FargateTaskDefinitionBuilder

FargateTaskDefinitionConfig

High-level Fargate Task Definition builder following AWS best practices. **Default Settings:** - CPU = 256 (.25 vCPU) - Memory = 512 MB - Network mode = awsvpc (required for Fargate) **Rationale:** Task definitions define the containers that run in your ECS service. Fargate task definitions require awsvpc network mode.

FargateTaskDefinitionSpec

FilterPatterns

Helper module for common filter patterns

FunctionBuilder

FunctionBuilders

FunctionConfig

FunctionPermissionsBuilders

FunctionSpec

FunctionUrlBuilders

FunctionUrlCorsOptionsBuilder

FunctionUrlCorsOptionsConfig

FunctionUrlOptionsBuilder

FunctionUrlOptionsConfig

FunctionVersionBuilders

GatewayVpcEndpointBuilder

GatewayVpcEndpointConfig

GatewayVpcEndpointSpec

GlobalSecondaryIndexBuilder

GlobalSecondaryIndexConfig

GrantAccessType

GrantBuilder

GrantConfig

Grants

GrantsBuilders

GrantSpec

GraphWidgetBuilder

GraphWidgetConfig

HttpApiBuilder

HttpApiBuilders

HttpApiConfig

High-level API Gateway V2 HTTP API builder following AWS best practices. **Default Security Settings:** - CORS = disabled (opt-in for specific origins) - Auto-deploy = true **Rationale:** These defaults follow AWS Well-Architected Framework: - CORS disabled by default prevents unauthorized cross-origin access - HTTP API provides low-latency, cost-effective API Gateway - Auto-deploy simplifies deployment workflow **Escape Hatch:** Access the underlying CDK HttpApi via the `Api` property for advanced scenarios not covered by this builder.

HttpApiHelpers

Helper functions for creating HTTP API CORS configurations

HttpApiResource

IAMBuilders

ImportSourceBuilder

ImportSourceConfig

InterfaceVpcEndpointBuilder

InterfaceVpcEndpointConfig

InterfaceVpcEndpointSpec

KinesisBuilders

KinesisStreamBuilder

KinesisStreamConfig

High-level Kinesis Stream builder following AWS best practices. **Default Security Settings:** - Encryption = enabled with AWS managed key - Retention period = 24 hours - Shard count = 1 (for low throughput) - Stream mode = PROVISIONED **Rationale:** These defaults follow AWS Well-Architected Framework: - Encryption at rest for data protection - 24-hour retention balances cost and recovery needs - Single shard for cost optimization (scale as needed) - Provisioned mode for predictable costs **Escape Hatch:** Access the underlying CDK Stream via the `Stream` property for advanced scenarios not covered by this builder.

KinesisStreamSpec

KMSBuilders

KMSHelpers

Helper functions for common KMS key patterns

KMSKeyBuilder

KMSKeyConfig

High-level KMS Key builder following AWS security best practices. **Default Security Settings:** - Key rotation = enabled (automatic yearly rotation) - Removal policy = RETAIN (prevents accidental key deletion) - Key spec = SYMMETRIC_DEFAULT (AES-256-GCM) - Key usage = ENCRYPT_DECRYPT **Rationale:** These defaults follow AWS Well-Architected Framework: - Automatic rotation reduces risk of key compromise - Retained keys prevent data loss (encrypted data becomes unreadable without key) - Symmetric encryption is most common use case - CloudTrail provides audit trails for all key usage **Use Cases:** - Encrypt data at rest (S3, EBS, RDS, DynamoDB) - Encrypt secrets (Secrets Manager, Parameter Store) - Sign and verify (asymmetric keys) - Generate HMACs **Escape Hatch:** Access the underlying CDK Key via the `Key` property on the returned resource for advanced scenarios not covered by this builder.

KMSKeySpec

LambdaFileSystemBuilder

LambdaFileSystemBuilders

LambdaFileSystemConfig

LambdaPowertools

Lambda Powertools integration for production-grade observability. **Features:** - Structured logging with correlation IDs - Custom metrics without CloudWatch overhead - Distributed tracing integration - Best practice environment variables **Rationale:** Yan Cui strongly recommends Lambda Powertools for production Lambda functions: - Reduces boilerplate for logging, metrics, tracing - Standardizes observability across functions - Automatic correlation ID propagation - Zero cold-start impact **Use Cases:** - Production Lambda functions - Microservices architecture - Event-driven applications - Distributed tracing requirements **Supported Runtimes:** - Python 3.8+ - Node.js 14.x+ - Java 8+, 11, 17 - .NET 6+

LambdaPowertoolsBuilders

LambdaPowertoolsHelpers

Helper functions for Lambda Powertools integration

LambdaSubscriptionBuilder

LambdaSubscriptionConfig

LifecycleRuleBuilder

LifecycleRuleConfig

LifecycleRuleHelpers

Helper functions for creating S3 lifecycle rules

LocalSecondaryIndexBuilder

LocalSecondaryIndexConfig

LogQueryWidgetBuilder

LogQueryWidgetConfig

ManagedPolicyBuilder

ManagedPolicyBuilders

ManagedPolicyConfig

ManagedPolicySpec

ManagedPolicyStatements

MfaSecondFactorBuilder

MfaSecondFactorConfig

NetworkLoadBalancerBuilder

NetworkLoadBalancerBuilders

NetworkLoadBalancerConfig

High-level Network Load Balancer builder following AWS best practices. **Default Security Settings:** - Internet-facing = false (internal by default for security) - Cross-zone load balancing = enabled (for high availability) - Deletion protection = false (opt-in for production) - IP address type = IPv4 **Rationale:** These defaults follow AWS Well-Architected Framework: - Internal by default prevents accidental public exposure - Cross-zone balancing improves availability and fault tolerance - IPv4 provides broadest compatibility **Escape Hatch:** Access the underlying CDK NetworkLoadBalancer via the `LoadBalancer` property for advanced scenarios not covered by this builder.

NetworkLoadBalancerSpec

NoncurrentVersionTransitionBuilder

NoncurrentVersionTransitionConfig

Observability

Observability helpers for CloudTrail, CloudWatch, GuardDuty, and AWS Config. **Rationale:** - CloudTrail provides audit logs for compliance and security investigations - CloudWatch alarms enable proactive incident response - GuardDuty detects threats and anomalous behavior - AWS Config tracks resource configuration changes These tools are essential for: - Security monitoring and threat detection - Compliance auditing (SOC2, HIPAA, PCI-DSS) - Operational visibility and troubleshooting - Cost optimization through usage tracking

OIDCProviderBuilder

OIDCProviderBuilders

OIDCProviderConfig

High-level OIDC Provider builder for federated identity in IAM. **Use Cases: ** - GitHub Actions authentication - GitLab CI/CD authentication - Other OIDC-based identity providers **Security Best Practices: ** - Limit client IDs to known applications - Use thumbprints to verify the identity provider's certificate - Apply least-privilege IAM policies to federated roles **Escape Hatch: ** Access the underlying CDK OpenIdConnectProvider via the `Provider` property for advanced scenarios not covered by this builder.

OIDCProviders

OIDCProviderSpec

Operation

OriginAccessIdentityBuilder

OriginAccessIdentityConfig

High-level CloudFront Origin Access Identity (OAI) builder. **Use Case:** OAI allows CloudFront to access private S3 buckets without making them public. This is a security best practice for serving static content. **Note:** AWS recommends using Origin Access Control (OAC) instead of OAI for new applications. OAI is maintained for backward compatibility. **Escape Hatch:** Access the underlying CDK OriginAccessIdentity via the `Identity` property.

OriginAccessIdentitySpec

PasswordPolicyBuilder

PasswordPolicyConfig

PermissionBuilder

PermissionConfig

PolicyBuilder

PolicyBuilders

PolicyConfig

PolicyDocumentBuilder

PolicyDocumentBuilders

PolicyDocumentConfig

PolicySpec

PolicyStatementBuilder

PolicyStatementBuilders

PolicyStatementConfig

QueueBuilder

QueueConfig

QueueSpec

RdsBuilders

RestApiBuilder

RestApiConfig

High-level API Gateway REST API builder following AWS best practices. **Default Security Settings:** - Endpoint type = REGIONAL (recommended for most use cases) - Deploy = true (automatically creates deployment) - CloudWatch role = automatically configured **Rationale:** REST APIs provide full control over API Gateway features including: - Request/response transformation - API keys and usage plans - Request validators - VPC Link integration - Custom authorizers **Escape Hatch:** Access the underlying CDK RestApi via the `RestApi` property on RestApiSpec for advanced scenarios not covered by this builder.

RestApiSpec

RoleBuilder

RoleConfig

RoleSpec

Route53ARecordBuilder

Route53ARecordConfig

High-level Route 53 A Record builder. **Rationale:** A records map domain names to IP addresses or AWS resources. Supports alias records for AWS resources like ALB, CloudFront, etc.

Route53ARecordSpec

Route53Builders

Route53HealthCheckBuilder

Route53HealthCheckConfig

High-level Route 53 Health Check builder following AWS best practices. **Default Settings:** - Type = HTTPS (more secure than HTTP) - Port = 443 - Request interval = 30 seconds (standard) - Failure thresholds = 3 (balanced sensitivity) **Rationale:** Health checks monitor endpoint availability for failover routing. HTTPS health checks verify both connectivity and SSL/TLS validity. **Use Cases:** - Failover routing policies - Weighted routing with health-based failover - CloudWatch alarms for endpoint health

Route53HealthCheckResource

Route53Helpers

Helper functions for creating Route 53 record targets

Route53HostedZoneBuilder

Route53HostedZoneConfig

High-level Route 53 Hosted Zone builder following AWS best practices. **Default Settings:** - Query logging = disabled (opt-in via logging operation) - DNSSEC = disabled (opt-in, requires KMS key) **Rationale:** Hosted zones manage DNS records for your domain. DNSSEC and logging are opt-in features with additional costs. **Escape Hatch:** Access the underlying CDK HostedZone via the `HostedZone` property for advanced scenarios not covered by this builder.

Route53HostedZoneSpec

Route53PrivateHostedZoneBuilder

Route53PrivateHostedZoneConfig

High-level Route 53 Private Hosted Zone builder. **Use Case:** Private hosted zones are used for DNS resolution within VPCs only. They are not accessible from the public internet. **Rationale:** Private zones are ideal for internal service discovery and microservices architectures within AWS.

Route53PrivateHostedZoneResource

Route53RecordSetBuilder

Route53RecordSetBuilders

Route53RecordSetConfig

High-level Route 53 RecordSet builder with traffic routing policies. **Supported Routing Policies:** - Simple (default) - Weighted (distribute traffic based on weights) - Failover (primary/secondary failover) - Geolocation (route based on user location) - Latency (route to lowest latency endpoint) - Multivalue (return multiple healthy IPs) **Default Settings:** - TTL = 300 seconds (5 minutes) - Type = A record **Rationale:** RecordSet provides advanced routing capabilities beyond simple A records. Essential for high-availability, multi-region architectures. **Use Cases:** - Active-passive failover - Traffic distribution across regions - Blue-green deployments - Load distribution

Route53RecordSetHelpers

Helper functions for Route53 RecordSet routing policies

Route53RecordSetResource

RouteBuilder

RouteConfig

RouteSpec

RouteTableBuilder

RouteTableBuilders

RouteTableConfig

High-level EC2 Route Table builder following AWS networking best practices. **Default Settings:** - No default routes (explicit route configuration required) **Rationale:** Explicit route configuration follows the principle of least privilege and prevents accidental traffic routing. **Escape Hatch:** Access the underlying CDK CfnRouteTable via the `RouteTable` property for advanced scenarios not covered by this builder.

RouteTableSpec

S3BucketMetricsBuilders

S3Builders

S3LifecycleRuleBuilders

S3OriginType

S3TransitionBuilders

SecretsManagerBuilder

SecretsManagerBuilders

SecretsManagerConfig

High-level Secrets Manager Secret builder following AWS security best practices. **Default Security Settings:** - Encryption = KMS with AWS managed key (aws/secretsmanager) - Automatic rotation = disabled (opt-in via rotation operation) - Removal policy = RETAIN (prevents accidental deletion) **Rationale:** These defaults follow AWS Well-Architected Framework: - KMS encryption provides enhanced security and audit trails - Secrets retained on stack deletion prevents data loss - Rotation is opt-in as it requires Lambda function setup **Escape Hatch:** Access the underlying CDK Secret via the `Secret` property on the returned resource for advanced scenarios not covered by this builder.

SecretsManagerHelpers

Helper functions for creating secret string generators

SecretsManagerSpec

SecurityGroupBuilder

SecurityGroupConfig

SecurityGroupSpec

SecurityToggles

Toggle configurations for optional AWS security services These services have associated costs and should be enabled based on security requirements

SignInAliasesBuilder

SignInAliasesConfig

SingleValueWidgetBuilder

SingleValueWidgetConfig

SmsSubscriptionBuilder

SmsSubscriptionConfig

SNSBuilders

SQSBuilders

SqsSubscriptionBuilder

SqsSubscriptionConfig

SSMBuilders

SSMDocumentBuilder

SSMDocumentConfig

High-level Systems Manager Document builder. **Default Settings:** - Document type = Command - Document format = JSON **Rationale:** SSM Documents define actions that Systems Manager performs on managed instances. Command documents are most common for remote execution. **Use Cases:** - Remote command execution - Automated patching - Configuration enforcement - Inventory collection

SSMDocumentSpec

SSMHelpers

Helper functions for SSM operations

SSMParameterBuilder

SSMParameterConfig

High-level Systems Manager Parameter Store builder following AWS best practices. **Default Settings:** - Type = String (most common) - Tier = Standard (free, up to 10,000 parameters) **Rationale:** Parameter Store provides centralized configuration management. String type covers most use cases (connection strings, URLs, etc.). Standard tier is free and sufficient for most applications. **Use Cases:** - Application configuration - Database connection strings - API endpoints and keys - Feature flags **Escape Hatch:** Access the underlying CDK StringParameter via the `Parameter` property for advanced scenarios not covered by this builder.

SSMParameterSpec

StackBuilder

StackBuilders

StackConfig

StackOperations

StageBuilder

StageBuilders

StageConfig

StandardAttrConfig

StandardAttributeBuilder

StandardAttributesBuilder

StandardAttributesConfig

StepFunctionBuilder

StepFunctionBuilders

StepFunctionConfig

High-level AWS Step Functions (State Machine) builder following AWS best practices. **Default Settings:** - StateMachineType = STANDARD (for long-running workflows) - Logging = ALL events logged to CloudWatch (requires logDestination for Stack deployment) - TracingEnabled = true (X-Ray integration) - Timeout = 1 hour (configurable) **Rationale:** These defaults follow Yan Cui's production serverless best practices: - Standard type for reliable, exactly-once execution - Full logging for debugging and audit trails (requires logDestination when deploying) - X-Ray tracing for distributed system visibility - Reasonable timeout prevents runaway workflows **Use Cases:** - Order processing workflows - ETL data pipelines - Human approval workflows - Saga orchestration patterns - Microservice orchestration **Escape Hatch:** Access the underlying CDK StateMachine via the `StateMachine` property for advanced scenarios not covered by this builder.

StepFunctionHelpers

Helper functions for Step Functions operations

StepFunctionSpec

SubnetSelectionBuilder

SubnetSelectionBuilders

SubnetSelectionConfig

TableBuilder

TableConfig

TableGrantAccessType

TableSpec

TagBuilder

Tag builder for fluent tag creation using immutable state

TagBuilderState

Tag builder for fluent tag creation

Tags

Global tagging helpers for consistent resource tagging across stacks. **Rationale:** - Tags enable cost allocation and resource organization - Consistent tagging simplifies governance and compliance - Tags help with automation and resource discovery - Standard tags improve operational visibility **Best Practices:** - Apply tags at stack level for inheritance - Use consistent tag names across organization - Include: project, environment, owner, cost-center - Avoid PII or sensitive data in tags

TextWidgetBuilder

TextWidgetConfig

TokenAuthorizerBuilder

TokenAuthorizerConfig

TokenAuthorizerSpec

TopicBuilder

TopicConfig

TopicSpec

TransitionBuilder

TransitionConfig

UrlSubscriptionBuilder

UrlSubscriptionConfig

UserBuilder

UserBuilders

UserConfig

UserPoolBuilder

UserPoolClientBuilder

UserPoolClientConfig

UserPoolClientSpec

UserPoolConfig

UserPoolResourceServerBuilder

UserPoolResourceServerConfig

UserPoolResourceServerSpec

UserPoolSpec

UserPoolTriggersBuilder

UserPoolTriggersConfig

UserSpec

VersionOptionsBuilder

VersionOptionsConfig

VpcBuilder

VpcBuilders

VpcConfig

VPCGatewayAttachmentBuilder

VPCGatewayAttachmentBuilders

VPCGatewayAttachmentConfig

High-level VPC Gateway Attachment builder for connecting internet and VPN gateways to VPCs. **Use Cases: ** - Attach an Internet Gateway to enable internet access - Attach a Virtual Private Gateway for VPN connections **Rationale: ** Explicit gateway attachments provide fine-grained control over network connectivity and follow the principle of explicit configuration. **Escape Hatch: ** Access the underlying CDK VPCGatewayAttachment via the `Attachment` property for advanced scenarios not covered by this builder.

VPCGatewayAttachmentSpec

VpcLinkBuilder

VpcLinkConfig

VpcLinkSpec

VpcSpec

XRayBuilders

XRayGroupBuilder

XRayGroupConfig

High-level AWS X-Ray enhanced tracing builder following AWS best practices. **Default Settings:** - InsightsEnabled = true (automatic anomaly detection) - NotificationsEnabled = false (opt-in for notifications) **Rationale:** These defaults follow Yan Cui's production debugging recommendations: - X-Ray Groups for filtering traces by business logic - Sampling Rules for cost-effective tracing at scale - Insights for automatic anomaly detection **Use Cases:** - Production debugging and troubleshooting - Performance optimization - Distributed tracing across services - Error rate analysis - Latency profiling **Escape Hatch:** Access the underlying CDK CfnGroup/CfnSamplingRule via properties for advanced scenarios not covered by this builder.

XRayGroupSpec

XRayHelpers

Helper functions for X-Ray operations

XRaySamplingRuleBuilder

XRaySamplingRuleConfig

X-Ray Sampling Rule Configuration

XRaySamplingRuleSpec

Type something to start searching.