Free, open-source AWS emulator. LocalStack alternative: 105 services, 7,404 operations, true 100% Smithy conformance (248,557/248,557 variants pass). No account, no auth token, no paid tier.
543
stars
6,311
commits
Rust
primary language
Sep 7, 2026
updated
fakecloud
Local AWS cloud emulator. Free forever.
fakecloud is a free, open-source local AWS emulator for integration testing and local development. Single binary, no account, no auth token, no paid tier. Point your AWS SDK at http://localhost:4566 and it works.
In March 2026, LocalStack replaced its open-source Community Edition with a proprietary image that requires an account and auth token. fakecloud exists so teams can keep a fully local AWS testing workflow without one.
[!NOTE] Using fakecloud? Add your team to ADOPTERS.md. Takes 30 seconds, and it helps others see it is real.
curl -fsSL https://fakecloud.dev/install.sh | bash # or: brew install fakecloud
fakecloud
Then point any AWS SDK or CLI at http://localhost:4566 with dummy credentials:
aws --endpoint-url http://localhost:4566 sqs create-queue --queue-name my-queue
Works as a drop-in for LocalStack in CI, with Terraform (endpoints block), CDK (cdklocal), or any AWS SDK in any language. Other install options (Homebrew, Cargo, Docker, Docker Compose, source) and full guides: fakecloud.dev/docs/getting-started.
terraform-provider-aws TestAcc* suites to catch waiter/field/drift bugs that SDK tests miss.FAKECLOUD_CONTAINER_BACKEND=k8s. See the Kubernetes backend guide.InvokeModel/Converse streaming, guardrails, agents, and flows. Configurable responses + fault injection for deterministic tests. See /bedrock-emulator/.--verify-sigv4 for real signature checking and --iam soft|strict for policy evaluation across IAM/STS/SQS/SNS/S3. See security docs.AWS_CONTAINER_CREDENTIALS_FULL_URI at /_fakecloud/credentials. See Run an app unmodified.*.localhost.localstack.cloud and *.amazonaws.com Host headers route correctly, including every S3 virtual-hosted variant. Persisted URLs and dev scripts from either system replay unchanged.105 services, 7,396 operations, and true 100% conformance across every implemented service.
Highlights: S3, DynamoDB, SQS, SNS, EventBridge, Lambda, IAM, STS, KMS, Secrets Manager, CloudFormation, SES, Cognito, Kinesis, RDS (6 real engines), ElastiCache, ECS/ECR, EC2, Step Functions, API Gateway v1/v2, Bedrock, and 80+ more.
Full list with per-service op counts, control-plane vs data-plane coverage, and known limitations:
Since March 2026, LocalStack's Community image requires an account and token, and most services are paid-only. fakecloud stays fully free and local.
| fakecloud | LocalStack Community (post-March 2026) | |
|---|---|---|
| License | AGPL-3.0, free for commercial use | Proprietary, paid plans |
| Auth | None | Account + token required |
| Footprint | ~19 MB binary, ~10 MiB idle, ~300ms start, no Docker | ~1 GB image, ~150 MiB idle, ~3s start, Docker required |
| Conformance | true 100% (248,319 Smithy variants) | partial |
| Paywalled services | None (RDS, Cognito, SES, ElastiCache, ECS/ECR, EKS, Redshift, and more are all free) | Many core services paid-only |
| Test-assertion SDKs | TypeScript, Python, Go, PHP, Java, Rust | Python, Java |
Full feature-by-feature comparison: fakecloud.dev/vs/localstack.
Performance numbers measured on Apple M1 via
time fakecloud,ps -o rss,ls -lh.
Normal AWS SDKs handle your application code. fakecloud's own SDKs let your tests assert on what happened: sent emails, SNS messages, Lambda invocations, Bedrock calls, and more.
| Language | Install |
|---|---|
| TypeScript | npm install fakecloud |
| Python | pip install fakecloud |
| Go | go get github.com/faiscadev/fakecloud/sdks/go |
| PHP | composer require fakecloud/fakecloud |
| Java | dev.fakecloud:fakecloud (Maven Central) |
| Rust | cargo add fakecloud-sdk |
| C# / .NET | dotnet add package FakeCloud (NuGet) |
import { FakeCloud } from "fakecloud";
const fc = new FakeCloud();
// Your app sends through the normal AWS SDK.
// Your test asserts the side effect directly.
const { emails } = await fc.ses.getEmails();
expect(emails).toHaveLength(1);
await fc.reset();
Full SDK reference for all seven languages: fakecloud.dev/docs/sdks.
Add one of these snippets to your project so AI coding assistants (Claude Code, Cursor, GitHub Copilot) automatically use fakecloud for AWS integration tests.
CLAUDE.md## AWS Testing
For integration tests, use fakecloud as a local AWS emulator.
- Install: `curl -fsSL https://fakecloud.dev/install.sh | bash`
- Run: `fakecloud` (listens on http://localhost:4566)
- Configure AWS SDK endpoint to http://localhost:4566 with dummy credentials (access_key=test, secret_key=test)
- Docs: https://fakecloud.dev/llms.txt
.cursor/rulesFor AWS integration tests, use fakecloud (local AWS emulator) at http://localhost:4566.
Install: curl -fsSL https://fakecloud.dev/install.sh | bash
Run: fakecloud
Use dummy credentials (access_key=test, secret_key=test).
Docs: https://fakecloud.dev/llms.txt
.github/copilot-instructions.md## AWS Testing
Use fakecloud as a local AWS emulator for integration tests.
- Run: `fakecloud` (listens on http://localhost:4566)
- Configure endpoint_url to http://localhost:4566 with dummy credentials
- Docs: https://fakecloud.dev/llms.txt
See the current list in ADOPTERS.md. It is early days, so it is short for now.
Using fakecloud? Add your team: the preferred way is a quick PR adding a row to ADOPTERS.md. If a PR is inconvenient, comment on the "Who's using fakecloud?" issue instead. Self-reported and opt-in.
Contributions welcome. Fork, branch, write tests, open a PR.
feat:, fix:, chore:, test:, refactor:)cargo test --workspace && cargo clippy --workspace -- -D warnings && cargo fmt --checkSee CONTRIBUTING.md for more.
fakecloud is free and open-source, licensed under AGPL-3.0-or-later. Using fakecloud as a dev/test dependency has zero AGPL implications for your application — the copyleft clause only applies if you modify and redistribute fakecloud itself as a network service.
Part of the faisca project family | fakecloud.dev
Rust
96.9%
Free, open-source AWS emulator. LocalStack alternative: 105 services, 7,404 operations, true 100% Smithy conformance (248,557/248,557 variants pass). No account, no auth token, no paid tier.
543
stars
6,311
commits
Rust
primary language
Sep 7, 2026
updated
fakecloud
Local AWS cloud emulator. Free forever.
fakecloud is a free, open-source local AWS emulator for integration testing and local development. Single binary, no account, no auth token, no paid tier. Point your AWS SDK at http://localhost:4566 and it works.
In March 2026, LocalStack replaced its open-source Community Edition with a proprietary image that requires an account and auth token. fakecloud exists so teams can keep a fully local AWS testing workflow without one.
[!NOTE] Using fakecloud? Add your team to ADOPTERS.md. Takes 30 seconds, and it helps others see it is real.
curl -fsSL https://fakecloud.dev/install.sh | bash # or: brew install fakecloud
fakecloud
Then point any AWS SDK or CLI at http://localhost:4566 with dummy credentials:
aws --endpoint-url http://localhost:4566 sqs create-queue --queue-name my-queue
Works as a drop-in for LocalStack in CI, with Terraform (endpoints block), CDK (cdklocal), or any AWS SDK in any language. Other install options (Homebrew, Cargo, Docker, Docker Compose, source) and full guides: fakecloud.dev/docs/getting-started.
terraform-provider-aws TestAcc* suites to catch waiter/field/drift bugs that SDK tests miss.FAKECLOUD_CONTAINER_BACKEND=k8s. See the Kubernetes backend guide.InvokeModel/Converse streaming, guardrails, agents, and flows. Configurable responses + fault injection for deterministic tests. See /bedrock-emulator/.--verify-sigv4 for real signature checking and --iam soft|strict for policy evaluation across IAM/STS/SQS/SNS/S3. See security docs.AWS_CONTAINER_CREDENTIALS_FULL_URI at /_fakecloud/credentials. See Run an app unmodified.*.localhost.localstack.cloud and *.amazonaws.com Host headers route correctly, including every S3 virtual-hosted variant. Persisted URLs and dev scripts from either system replay unchanged.105 services, 7,396 operations, and true 100% conformance across every implemented service.
Highlights: S3, DynamoDB, SQS, SNS, EventBridge, Lambda, IAM, STS, KMS, Secrets Manager, CloudFormation, SES, Cognito, Kinesis, RDS (6 real engines), ElastiCache, ECS/ECR, EC2, Step Functions, API Gateway v1/v2, Bedrock, and 80+ more.
Full list with per-service op counts, control-plane vs data-plane coverage, and known limitations:
Since March 2026, LocalStack's Community image requires an account and token, and most services are paid-only. fakecloud stays fully free and local.
| fakecloud | LocalStack Community (post-March 2026) | |
|---|---|---|
| License | AGPL-3.0, free for commercial use | Proprietary, paid plans |
| Auth | None | Account + token required |
| Footprint | ~19 MB binary, ~10 MiB idle, ~300ms start, no Docker | ~1 GB image, ~150 MiB idle, ~3s start, Docker required |
| Conformance | true 100% (248,319 Smithy variants) | partial |
| Paywalled services | None (RDS, Cognito, SES, ElastiCache, ECS/ECR, EKS, Redshift, and more are all free) | Many core services paid-only |
| Test-assertion SDKs | TypeScript, Python, Go, PHP, Java, Rust | Python, Java |
Full feature-by-feature comparison: fakecloud.dev/vs/localstack.
Performance numbers measured on Apple M1 via
time fakecloud,ps -o rss,ls -lh.
Normal AWS SDKs handle your application code. fakecloud's own SDKs let your tests assert on what happened: sent emails, SNS messages, Lambda invocations, Bedrock calls, and more.
| Language | Install |
|---|---|
| TypeScript | npm install fakecloud |
| Python | pip install fakecloud |
| Go | go get github.com/faiscadev/fakecloud/sdks/go |
| PHP | composer require fakecloud/fakecloud |
| Java | dev.fakecloud:fakecloud (Maven Central) |
| Rust | cargo add fakecloud-sdk |
| C# / .NET | dotnet add package FakeCloud (NuGet) |
import { FakeCloud } from "fakecloud";
const fc = new FakeCloud();
// Your app sends through the normal AWS SDK.
// Your test asserts the side effect directly.
const { emails } = await fc.ses.getEmails();
expect(emails).toHaveLength(1);
await fc.reset();
Full SDK reference for all seven languages: fakecloud.dev/docs/sdks.
Add one of these snippets to your project so AI coding assistants (Claude Code, Cursor, GitHub Copilot) automatically use fakecloud for AWS integration tests.
CLAUDE.md## AWS Testing
For integration tests, use fakecloud as a local AWS emulator.
- Install: `curl -fsSL https://fakecloud.dev/install.sh | bash`
- Run: `fakecloud` (listens on http://localhost:4566)
- Configure AWS SDK endpoint to http://localhost:4566 with dummy credentials (access_key=test, secret_key=test)
- Docs: https://fakecloud.dev/llms.txt
.cursor/rulesFor AWS integration tests, use fakecloud (local AWS emulator) at http://localhost:4566.
Install: curl -fsSL https://fakecloud.dev/install.sh | bash
Run: fakecloud
Use dummy credentials (access_key=test, secret_key=test).
Docs: https://fakecloud.dev/llms.txt
.github/copilot-instructions.md## AWS Testing
Use fakecloud as a local AWS emulator for integration tests.
- Run: `fakecloud` (listens on http://localhost:4566)
- Configure endpoint_url to http://localhost:4566 with dummy credentials
- Docs: https://fakecloud.dev/llms.txt
See the current list in ADOPTERS.md. It is early days, so it is short for now.
Using fakecloud? Add your team: the preferred way is a quick PR adding a row to ADOPTERS.md. If a PR is inconvenient, comment on the "Who's using fakecloud?" issue instead. Self-reported and opt-in.
Contributions welcome. Fork, branch, write tests, open a PR.
feat:, fix:, chore:, test:, refactor:)cargo test --workspace && cargo clippy --workspace -- -D warnings && cargo fmt --checkSee CONTRIBUTING.md for more.
fakecloud is free and open-source, licensed under AGPL-3.0-or-later. Using fakecloud as a dev/test dependency has zero AGPL implications for your application — the copyleft clause only applies if you modify and redistribute fakecloud itself as a network service.
Part of the faisca project family | fakecloud.dev
Rust
96.9%