fakecloud presents a local AWS environment for integration tests. Applications can use their regular AWS SDK, AWS CLI, and infrastructure-as-code tools against localhost. Separate fakecloud SDKs expose reset, assertion, inspection, and manual control endpoints under /_fakecloud/*.

terminal
# Install (no Cargo or Docker needed)
$ curl -fsSL https://fakecloud.dev/install.sh | bash
# or: brew install fakecloud
$ fakecloud
# Your app uses the normal AWS SDK against localhost
$ aws --endpoint-url http://localhost:4566 sqs create-queue \
    --queue-name my-queue
# Your tests can inspect state through the fakecloud SDK
$ npm install fakecloud

The project lists 105 AWS services and 7,508 operations. It reports 248,557 of 248,557 Smithy-model-generated test variants passing, described as true 100% conformance. A separate figure identifies 3,932 implemented API operations covered by conformance and behavioral tests on every commit, with end-to-end checks against the official AWS SDKs.

The emulator connects more than 30 service-to-service flows. Examples include S3 notifications, SNS fanout, EventBridge targets, DynamoDB Streams, CloudWatch Logs subscriptions, Cognito triggers, Step Functions tasks, and API Gateway to Lambda calls. Tests can inspect SES emails, SNS messages, SQS queues, Lambda invocations, and Cognito confirmation codes after application code has run.

First-party test clients are available for TypeScript, Python, Go, PHP, Java, and Rust. The package names shown by the project include fakecloud for npm and PyPI, github.com/faiscadev/fakecloud/sdks/go for Go, and fakecloud-sdk for Rust. The clients support resets, assertions, event history, SES inbound simulation, state inspection, and manual control of asynchronous processors.

The listed service mix includes S3, SQS, SNS, EventBridge, EventBridge Pipes, EventBridge Scheduler, Lambda, EC2, DynamoDB, IAM, STS, Organizations, SSM, Secrets Manager, CloudWatch Logs, CloudWatch (Metrics & Alarms), KMS, CloudFormation, Cloud Control API, SES, Cognito User Pools, Cognito Identity, Kinesis, Firehose, RDS, RDS Data API, Aurora DSQL, Resource Groups, Resource Groups Tagging API, ElastiCache, MemoryDB, EKS, Cloud Map, Step Functions, API Gateway v1 (REST), API Gateway v2 (HTTP), Bedrock, Bedrock Agent, Bedrock Agent Runtime, Bedrock Runtime, ECR, ECS, Elastic Load Balancing v2, CloudFront, Route 53, WAF v2, Application Auto Scaling, Athena, ACM, ACM PCA, and Glue. The service directory covers REST, REST-JSON, XML, Query, JSON, and JSON 1.1 protocols.

fakecloud runs as a standalone binary or Docker image, with no sign-in, account, auth token, or paid tier required for the local workflow. Any dummy credentials can be used. The quick start offers an installer script and Homebrew, and does not require Cargo or Docker for the binary installation.

The comparison table lists fakecloud under AGPL-3.0 and LocalStack Community under a proprietary license. It gives fakecloud a startup time of about 300ms, idle memory use of about 10 MiB, and an install size of about 19 MB, compared with about 3s, 150 MiB, and a 1 GB Docker image for LocalStack Community. The table lists 46 services at true 100% conformance for fakecloud and 30+ services for LocalStack Community, with additional coverage marked paid-only.

The same table lists test SDKs for TypeScript, Python, Go, PHP, Java, and Rust. It records 122 Cognito User Pools operations, 110 SES v2 operations, 163 RDS operations, 75 ElastiCache operations, 45 MemoryDB operations, 103 API Gateway v2 operations, and 214 Bedrock operations across four APIs. RDS supports PostgreSQL, MySQL, MariaDB, and the PostgreSQL aws_lambda extension; ElastiCache supports Redis and Valkey through Docker. The table also mentions SES inbound receipt-rule actions, an EKS cluster control plane marked batch 1, and Bedrock coverage that LocalStack Community does not provide. The project is built by faisca and published on GitHub under the AGPL-3.0 license.