Developer and creative tools

aws/

aws-emulator

Local emulator of the AWS APIs, written in Rust. Test against it with no AWS account, from the CLI, any SDK, or in-process inside Rust tests.

What’s new here

It runs as a server you start and point your SDK at, and it also has an embedded mode for Rust. You add it as a dev-dependency, and each test gets its own in-process emulator wired straight into the SDK client. Each release also ships per-service fidelity scores, so you can see how closely a service matches AWS before you rely on it.

What it does

AWS Emulator serves an AWS API endpoint on your machine, a dev server or in CI. You point the AWS CLI or an SDK at it with environment variables and run your code as usual. Requests go to emulated resources, and you don’t need an AWS account.

The workspace has one crate per AWS service. Each crate has a Smithy model that drives the wire protocol, keeps its own in-memory state, and has one file per operation. A router binary mounts every service on one endpoint. There is no GUI.

The README says it is for building and testing only. Don’t use it for production workloads or to test security. Gaps against real AWS are tracked in the repo’s issues/ directory, split into things that don’t work yet and things that now work.

Who it’s for

Developers who write code against AWS and want tests that don’t call AWS, carry no additional service fee and don’t touch a real account. It fits CI jobs well, and Rust teams get the most out of embedded mode. It also suits people who want a coding agent to set up the local environment, since there is an agent skill for that. Check the fidelity scores and the known-issues list first, because it only helps if the services you use are covered.

Try it

Linux users install the RPM or Debian package and run aws-emulator. On Windows and macOS the README has you run it in a container built from a short Dockerfile. Then set the environment variables that point your SDK at the emulator (see the docs page “Pointing your AWS SDK at AWS Emulator”).

To have an AI coding agent set it up, you need AWS CLI 2.35.0 or later:

aws agent-toolkit add-skill --skill-name aws-emulator --region us-east-1

To build from source (Linux only), you need a Rust toolchain, a C compiler, at least 100 GB of free disk for target/ and a multi-core machine:

cargo build -p aws-emulator-router
cargo run   -p aws-emulator-router

It serves HTTPS on 127.0.0.1:9297 with a self-signed certificate.

Telemetry is on by default. To turn it off:

aws-emulator --telemetry off

The latest release lists only a scores.json.gz asset (the fidelity scores), so use the packages or the Docker path to install.

How mature is it

The repo was created on 2026-09-11 and last pushed on 2026-11-11. It has 3,642 stars, 88 forks, 12 releases (latest v1.0.322 on 2026-11-11) and 68 open issues. The 90-day commit count is at least 100 (the API caps it there). The API reports 0 contributors. The README says the repo does not take PRs, and bugs and fidelity gaps go through GitHub Issues. The license is CC0-1.0, except the vendor/ directory, which is Apache 2.0. It is young and moves fast, so check the fidelity scores for the services you need.