fakecloud is een lokale emulator voor AWS-cloudservices, speciaal ontwikkeld voor integratietesten. Het stelt ontwikkelaars in staat om applicaties te draaien met reguliere AWS-clients, CLI en IaC-tools, maar volledig lokaal en zonder de noodzaak voor authenticatietokens of betaalde accounts.
Belangrijkste eigenschappen:
- Uitgebreide dekking: Ondersteunt 105 AWS-services (waaronder S3, Lambda, DynamoDB en Bedrock) met een bewezen 100% conformiteit via Smithy-varianten.
- Test-optimalisatie: Naast de standaard AWS-API's biedt fakecloud eigen SDK's (voor TypeScript, Python, Go, PHP, Java en Rust) voor geavanceerde assertions en controle over asynchrone processen.
- Realistisch gedrag: De emulator ondersteunt complexe cross-service flows, zoals S3-notificaties en DynamoDB Streams.
- Technische voordelen: In vergelijking met LocalStack Community is fakecloud aanzienlijk sneller in opstarttijd (~300ms), lichter in geheugengebruik (~10 MiB idle) en biedt het meer services gratis aan.
De tool kan eenvoudig worden geïnstalleerd via een shell-script of Homebrew en is beschikbaar als een standalone binary of Docker-image.
fakecloud - Lokale AWS Cloud Emulator
Specificaties:
- 105 services.
- 7.508 operaties.
- 248.557/248.557 Smithy-varianten zijn geslaagd — een werkelijke 100% conformiteit.
Waarom fakecloud?
fakecloud biedt een lokale AWS-omgeving die zich gedraagt als infrastructuur in plaats van een mock. Je applicatie maakt gebruik van de reguliere AWS SDK, CLI en IaC-tools. In tegenstelling tot de huidige LocalStack Community-opstelling, heb je geen account, authenticatietoken of betaald abonnement nodig om je kernontwikkelingsflows lokaal te houden.
De SDK's maken deze workflow efficiënter. Je start fakecloud, draait de code die je daadwerkelijk implementeert, inspecteert e-mails/berichten/aanroepingen achteraf en dwingt asynchroon AWS-gedrag op aanvraag af.
Gebouwd voor realistische lokale testen
fakecloud biedt echte API's voor je applicatie en speciaal gebouwde tooling voor je testen.
Workflow
Test wat je applicatie echt doet Gebruik normale AWS-clients tegen localhost en verifieer vervolgens de effecten met fakecloud, in plaats van het samenvoegen van polling, fixtures of private test-hooks.
SDK's
First-party testclients SDK's voor TypeScript, Python, Go, PHP, Java en Rust vormen een wrapper rond de /_fakecloud/* endpoints. Deze worden gebruikt voor resets, assertions en handmatige controle van asynchrone processors nadat je applicatie de normale AWS API's heeft gebruikt.
Dekking
105 AWS services Ondersteunde services zijn onder andere: 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 en Glue.
Technische kwaliteiten
Conformiteitstesten
Er is sprake van een werkelijke 100% conformiteit over alle 3.932 geïmplementeerde API-operaties: 248.557/248.557 door Smithy-model gegenereerde testvarianten slagen bij elke commit, ondersteund door end-to-end testen tegen de officiële AWS SDK's.
Realistisch gedrag
Cross-service flows zijn gekoppeld Er zijn meer dan 30 service-to-service integraties aanwezig, zoals:
- S3-notificaties
- SNS fanout
- EventBridge targets
- DynamoDB Streams
- CloudWatch Logs abonnementen
- Cognito triggers
- Step Functions taakintegraties
- API Gateway → Lambda
Eenvoud in gebruik
Geen authenticatie, geen lock-in, geen betaald tier Draai een enkel binair bestand of Docker-image, gebruik willekeurige dummy-credentials en houd de volledige workflow lokaal zonder je aan te melden bij een extern platform.
SDK's voor test-assertions
Blijf de AWS SDK in je applicatie gebruiken. Gebruik de fakecloud SDK's wanneer je testen zichtbaarheid en controle over de emulator zelf nodig hebben.
- TypeScript:
npm install fakecloud
Inspecteer SES-e-mails, SNS-berichten, SQS-queues, Lambda-aanroepingen, Cognito-bevestigingscodes en meer.
- Python:
pip install fakecloud
Asynchrone en synchrone clients voor pytest of integratietesten op applicatieniveau, met dezelfde introspectie en simulatie-dekking.
- Go:
go get github.com/faiscadev/fakecloud/sdks/go
Context-vriendelijke helpers voor resets, event-geschiedenis, SES inbound-simulatie en overige fakecloud-testfunctionaliteiten.
- Rust:
cargo add fakecloud-sdk
Native Rust-client voor testen die resets, statusinspectie en directe toegang tot het introspectie-oppervlak van fakecloud vereisen.
Snelstart
Start fakecloud, richt je AWS-client op localhost en verifieer vervolgens wat er is gebeurd.
# Installatie (geen Cargo of Docker nodig)
$ curl -fsSL https://fakecloud.dev/install.sh | bash
# of: brew install fakecloud
$ fakecloud
# Je applicatie gebruikt de normale AWS SDK tegen localhost
$ aws --endpoint-url http://localhost:4566 sqs create-queue \
--queue-name my-queue
# Je testen kunnen de status inspecteren via de fakecloud SDK
$ npm install fakecloud
Vergelijking
Voor wie een volledig lokale workflow wil met echte AWS API's zonder accountvereiste, is fakecloud specifiek hiervoor gebouwd.
| Kenmerk | fakecloud | LocalStack Community |
| Licentie | AGPL-3.0 | Proprietary |
| Authenticatie vereist | Nee | Ja (account + token) |
| Commercieel gebruik | Gratis | Alleen betaalde plannen |
| Docker vereist | Nee (standalone binary) | Ja |
| Opstarttijd | ~300ms | ~3s |
| Geheugengebruik (idle) | ~10 MiB | ~150 MiB |
| Installatiegrootte | ~19 MB binary | ~1 GB Docker image |
| AWS services | 46 met 100% conformiteit | 30+ (daarbuiten betaald) |
| Test assertion SDK's | TypeScript, Python, Go, PHP, Java, Rust | Python, Java |
| Cognito User Pools | 122 operaties | Alleen betaald |
| SES v2 | 110 operaties | Alleen betaald |
| SES inbound email | Echte receipt rule acties | Opgeslagen maar nooit uitgevoerd |
| RDS | 163 operaties, PostgreSQL/MySQL/MariaDB via Docker, PostgreSQL aws_lambda extension | Alleen betaald |
| ElastiCache | 75 operaties, Redis en Valkey via Docker | Alleen betaald |
| MemoryDB | 45 operaties, volledige control plane | Alleen betaald |
| EKS | Cluster control plane (batch 1) | Alleen betaald |
| API Gateway v2 | 103 operaties, HTTP API's + developer portals + JWT/Lambda authorizers | Alleen betaald |
| Bedrock | 214 operaties over 4 API's | Niet beschikbaar |
Ondersteunde services
Elke geïmplementeerde API is gedekt door conformiteits- en gedragstesten.
| Service | Protocol |
| S3 | REST $\cdot$ XML |
| SQS | Query $\cdot$ XML |
| SNS | Query $\cdot$ XML |
| EventBridge | JSON |
| EventBridge Scheduler | JSON |
| SSM | JSON |
| DynamoDB | JSON |
| IAM | Query |
| STS | Query |
| Lambda | REST $\cdot$ JSON |
| Secrets Manager | JSON |
| CloudWatch Logs | JSON |
| KMS | JSON |
| CloudFormation | Query |
| SES | REST + Query |
| Cognito User Pools | JSON |
| Kinesis | JSON |
| RDS | Query |
| ElastiCache | Query |
| MemoryDB | JSON 1.1 |
| EKS | REST-JSON |
| Step Functions | JSON |
| API Gateway v1 (REST) | REST $\cdot$ JSON |
| API Gateway v2 | REST $\cdot$ JSON |
| Bedrock | REST $\cdot$ JSON |
| Bedrock Runtime | REST $\cdot$ JSON |
| Bedrock Agent | REST $\cdot$ JSON |
| Bedrock Agent Runtime | REST $\cdot$ JSON |
| ECR | REST $\cdot$ JSON |
| ECS | JSON |
| Elastic Load Balancing v2 | Query |
| CloudFront | REST $\cdot$ XML |
| Route 53 | REST $\cdot$ XML |
| ACM | JSON |
| ACM PCA | JSON |
| Application Auto Scaling | JSON |
| WAF v2 | JSON |
| Athena | JSON |
| Glue | JSON |
| Cognito Identity | JSON |
| CloudWatch (Metrics & Alarms) | Query |
| Firehose | JSON |
| EC2 | Query $\cdot$ XML |
| Organizations | JSON |
| Cloud Control API | JSON |
| EventBridge Pipes | REST $\cdot$ JSON |
| RDS Data API | REST $\cdot$ JSON |
| Aurora DSQL | REST $\cdot$ JSON |
| Resource Groups | REST $\cdot$ JSON |
| Resource Groups Tagging API | JSON |
fakecloud - Lokale AWS Cloud Emulator
Specificaties:
- 105 services.
- 7.508 operaties.
- 248.557/248.557 Smithy-varianten zijn geslaagd — een werkelijke 100% conformiteit.
Waarom fakecloud?
fakecloud biedt een lokale AWS-omgeving die zich gedraagt als infrastructuur in plaats van een mock. Je applicatie maakt gebruik van de reguliere AWS SDK, CLI en IaC-tools. In tegenstelling tot de huidige LocalStack Community-opstelling, heb je geen account, authenticatietoken of betaald abonnement nodig om je kernontwikkelingsflows lokaal te houden.
De SDK's maken deze workflow efficiënter. Je start fakecloud, draait de code die je daadwerkelijk implementeert, inspecteert e-mails/berichten/aanroepingen achteraf en dwingt asynchroon AWS-gedrag op aanvraag af.
Gebouwd voor realistische lokale testen
fakecloud biedt echte API's voor je applicatie en speciaal gebouwde tooling voor je testen.
Workflow
Test wat je applicatie echt doet Gebruik normale AWS-clients tegen localhost en verifieer vervolgens de effecten met fakecloud, in plaats van het samenvoegen van polling, fixtures of private test-hooks.
SDK's
First-party testclients SDK's voor TypeScript, Python, Go, PHP, Java en Rust vormen een wrapper rond de /_fakecloud/* endpoints. Deze worden gebruikt voor resets, assertions en handmatige controle van asynchrone processors nadat je applicatie de normale AWS API's heeft gebruikt.
Dekking
105 AWS services Ondersteunde services zijn onder andere: 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 en Glue.
Technische kwaliteiten
Conformiteitstesten
Er is sprake van een werkelijke 100% conformiteit over alle 3.932 geïmplementeerde API-operaties: 248.557/248.557 door Smithy-model gegenereerde testvarianten slagen bij elke commit, ondersteund door end-to-end testen tegen de officiële AWS SDK's.
Realistisch gedrag
Cross-service flows zijn gekoppeld Er zijn meer dan 30 service-to-service integraties aanwezig, zoals:
- S3-notificaties
- SNS fanout
- EventBridge targets
- DynamoDB Streams
- CloudWatch Logs abonnementen
- Cognito triggers
- Step Functions taakintegraties
- API Gateway → Lambda
Eenvoud in gebruik
Geen authenticatie, geen lock-in, geen betaald tier Draai een enkel binair bestand of Docker-image, gebruik willekeurige dummy-credentials en houd de volledige workflow lokaal zonder je aan te melden bij een extern platform.
SDK's voor test-assertions
Blijf de AWS SDK in je applicatie gebruiken. Gebruik de fakecloud SDK's wanneer je testen zichtbaarheid en controle over de emulator zelf nodig hebben.
- TypeScript:
npm install fakecloud
Inspecteer SES-e-mails, SNS-berichten, SQS-queues, Lambda-aanroepingen, Cognito-bevestigingscodes en meer.
- Python:
pip install fakecloud
Asynchrone en synchrone clients voor pytest of integratietesten op applicatieniveau, met dezelfde introspectie en simulatie-dekking.
- Go:
go get github.com/faiscadev/fakecloud/sdks/go
Context-vriendelijke helpers voor resets, event-geschiedenis, SES inbound-simulatie en overige fakecloud-testfunctionaliteiten.
- Rust:
cargo add fakecloud-sdk
Native Rust-client voor testen die resets, statusinspectie en directe toegang tot het introspectie-oppervlak van fakecloud vereisen.
Snelstart
Start fakecloud, richt je AWS-client op localhost en verifieer vervolgens wat er is gebeurd.
# Installatie (geen Cargo of Docker nodig)
$ curl -fsSL https://fakecloud.dev/install.sh | bash
# of: brew install fakecloud
$ fakecloud
# Je applicatie gebruikt de normale AWS SDK tegen localhost
$ aws --endpoint-url http://localhost:4566 sqs create-queue \
--queue-name my-queue
# Je testen kunnen de status inspecteren via de fakecloud SDK
$ npm install fakecloud
Vergelijking
Voor wie een volledig lokale workflow wil met echte AWS API's zonder accountvereiste, is fakecloud specifiek hiervoor gebouwd.
| Kenmerk | fakecloud | LocalStack Community |
| Licentie | AGPL-3.0 | Proprietary |
| Authenticatie vereist | Nee | Ja (account + token) |
| Commercieel gebruik | Gratis | Alleen betaalde plannen |
| Docker vereist | Nee (standalone binary) | Ja |
| Opstarttijd | ~300ms | ~3s |
| Geheugengebruik (idle) | ~10 MiB | ~150 MiB |
| Installatiegrootte | ~19 MB binary | ~1 GB Docker image |
| AWS services | 46 met 100% conformiteit | 30+ (daarbuiten betaald) |
| Test assertion SDK's | TypeScript, Python, Go, PHP, Java, Rust | Python, Java |
| Cognito User Pools | 122 operaties | Alleen betaald |
| SES v2 | 110 operaties | Alleen betaald |
| SES inbound email | Echte receipt rule acties | Opgeslagen maar nooit uitgevoerd |
| RDS | 163 operaties, PostgreSQL/MySQL/MariaDB via Docker, PostgreSQL aws_lambda extension | Alleen betaald |
| ElastiCache | 75 operaties, Redis en Valkey via Docker | Alleen betaald |
| MemoryDB | 45 operaties, volledige control plane | Alleen betaald |
| EKS | Cluster control plane (batch 1) | Alleen betaald |
| API Gateway v2 | 103 operaties, HTTP API's + developer portals + JWT/Lambda authorizers | Alleen betaald |
| Bedrock | 214 operaties over 4 API's | Niet beschikbaar |
Ondersteunde services
Elke geïmplementeerde API is gedekt door conformiteits- en gedragstesten.
| Service | Protocol |
| S3 | REST $\cdot$ XML |
| SQS | Query $\cdot$ XML |
| SNS | Query $\cdot$ XML |
| EventBridge | JSON |
| EventBridge Scheduler | JSON |
| SSM | JSON |
| DynamoDB | JSON |
| IAM | Query |
| STS | Query |
| Lambda | REST $\cdot$ JSON |
| Secrets Manager | JSON |
| CloudWatch Logs | JSON |
| KMS | JSON |
| CloudFormation | Query |
| SES | REST + Query |
| Cognito User Pools | JSON |
| Kinesis | JSON |
| RDS | Query |
| ElastiCache | Query |
| MemoryDB | JSON 1.1 |
| EKS | REST-JSON |
| Step Functions | JSON |
| API Gateway v1 (REST) | REST $\cdot$ JSON |
| API Gateway v2 | REST $\cdot$ JSON |
| Bedrock | REST $\cdot$ JSON |
| Bedrock Runtime | REST $\cdot$ JSON |
| Bedrock Agent | REST $\cdot$ JSON |
| Bedrock Agent Runtime | REST $\cdot$ JSON |
| ECR | REST $\cdot$ JSON |
| ECS | JSON |
| Elastic Load Balancing v2 | Query |
| CloudFront | REST $\cdot$ XML |
| Route 53 | REST $\cdot$ XML |
| ACM | JSON |
| ACM PCA | JSON |
| Application Auto Scaling | JSON |
| WAF v2 | JSON |
| Athena | JSON |
| Glue | JSON |
| Cognito Identity | JSON |
| CloudWatch (Metrics & Alarms) | Query |
| Firehose | JSON |
| EC2 | Query $\cdot$ XML |
| Organizations | JSON |
| Cloud Control API | JSON |
| EventBridge Pipes | REST $\cdot$ JSON |
| RDS Data API | REST $\cdot$ JSON |
| Aurora DSQL | REST $\cdot$ JSON |
| Resource Groups | REST $\cdot$ JSON |
| Resource Groups Tagging API | JSON |