repowiserepowise

aws / aws-emulator Architecture and code health

AWS Emulator is a local emulator of the AWS APIs.

★ 7,823stars on GitHubRustCC0-1.0

Repowise maps public repos from their source. Not affiliated with aws. What is Repowise?

github.com/aws/aws-emulatorIndexed at 0c052e9

What is aws-emulator?

aws-emulator is a local emulator of the AWS APIs. It is for testing software without calling AWS, on your own machine, on a development server, or in continuous integration (CI). Your AWS CLI or SDK requests go to a local endpoint that the emulator serves instead of AWS. The project is written in Rust. To install it, run git clone https://github.com/aws/aws-emulator.git and follow the steps below. Its code health is 8.5 out of 10 (Excellent), ranked #26 of 4,000+ indexed repos. The last commit to aws-emulator was on Nov 13, 2026, and 1 person has contributed.

As of commit 0c052e9, indexed Nov 14, 2026. What it is comes from a model reading the README; the rest is measured from the source and git history, not from the maintainer.

For agentsaws-emulator.md

Repo facts: type, license, health, rank, contributors
aws-emulator facts
LicenseCC0-1.0
Code health8.5 / 10 (Excellent)
Health rank#26 of 4,000+ indexed repos
Last commitNov 13, 2026
Contributors1
Bus factor1
Size83,136 files, 11,179,574 lines

Install aws-emulator

Commands copied from the README

  1. 1Clone the aws-emulator repository.
    git clone https://github.com/aws/aws-emulator.git
  2. 2Move into the aws-emulator folder.
    cd aws-emulator
  3. 3On Linux, build the emulator from a source checkout with a Rust toolchain.
    cargo build -p aws-emulator-router
  4. 4Run the emulator from the checkout, where it serves HTTPS on 127.0.0.1:9297.
    cargo run -p aws-emulator-router

Releases on GitHub (latest v1.0.353, Nov 14, 2026)

Full install notes on GitHub

Explore aws-emulator

Ask about this code in your agent

This connects Repowise to aws-emulator's code. It does not install aws-emulator. To install aws-emulator, use the install steps.

Useful if you want to change or fork aws-emulator: your agent can ask how it is put together and get answers that cite its files.

Show the connect command (Claude Code, Cursor, Codex, VS Code)

Run it in a terminal, then type /mcp in Claude Code and sign in with Repowise. No key to paste.

Docs
bash
claude mcp add --transport http repowise https://api.repowise.dev/mcp/aws/aws-emulator
Claude Code, Claude, Cursor and VS Code sign you in on first use, free. Codex and Windsurf need an API key: sign in to create one.Sign in for a key

This repo is public, so anyone with a free Repowise account can connect.

Try asking

  • get_risk(["services/service-com-amazonaws-paymentcryptography-paymentcryptographycontrolplane/src/state.rs"])
  • get_answer("how is aws-emulator put together?")
  • get_why("why is aws-emulator structured this way?")

How to use aws-emulator

  1. 1Install the aws-emulator skill for an AI coding agent, which needs AWS CLI version 2.35.0 or later.
    aws agent-toolkit add-skill --skill-name aws-emulator --region us-east-1

Ask about aws-emulator

Answers come from aws-emulator's README and source, with the files they cite. Two free answers a day without an account.

Want this for your own codebase? Map your repo free

About this page

Get a page like this for your own codebase

Repowise built this map of aws/aws-emulator from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.

Free for 2 public repos, with a page like this one. No card. See how Repowise works

Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed. Star Repowise on GitHub

aws/aws-emulator FAQ

What is aws-emulator?

aws-emulator is a local emulator of the AWS APIs. It lets you test software without calling AWS or needing an AWS account.

How does aws-emulator work?

aws-emulator is a local program that serves an AWS API endpoint. You set environment variables to point the AWS CLI or an AWS SDK at it, or in embedded mode you pass its HTTP client to your SDK.

How do I install aws-emulator?

aws-emulator installs from a prebuilt RPM or Debian package on Linux, or runs in a container built from a short Dockerfile on Windows and macOS. Building from source is supported on Linux x86_64 and aarch64. See the install steps

What language is aws-emulator written in?

aws-emulator is written in Rust. Some of its dependencies build C code, so a C compiler is needed when building from source.

How is the aws-emulator code organized?

aws-emulator keeps one crate per AWS service in the services directory and the router in the core directory. Known gaps are tracked as files in the issues directory.

When should I use aws-emulator?

Use aws-emulator for building and testing software on your own machine, a development server, or in continuous integration. Do not use it for production workloads or to test security.

What license does aws-emulator use?

aws-emulator uses the CC0-1.0 license.

Code health

8.5out of 10Excellent

Hotspots average 5.0, the place fixes pay off most.

On the leaderboards:#2 of 21 Rust repos

Key features of aws-emulator

  • Runs as a local program that serves an AWS API endpoint, with no graphical interface.
  • Lets you test software without an AWS account, with requests going to the emulator instead of AWS.
  • Provides an embedded mode for Rust tests, where each test runs its own isolated instance with no endpoint URL or environment variable to set.
  • Offers a server mode with Linux packages and a container path for Windows and macOS.
  • Collects usage telemetry by default, and you can turn it off with a command-line option, an environment variable, or a configuration file.

How aws/aws-emulator works

The services directory holds one crate per AWS service, such as services/service-com-amazonaws-dynamodb-dynamodb-20120810, and its src/state.rs file holds the DynamoDB state. The core directory holds the router, a crate named aws-emulator-router that is built and run with cargo. The router serves HTTPS on 127.0.0.1:9297 with a self-signed certificate, and your CLI or SDK reaches it after environment variables point them at that endpoint. In embedded mode, the aws_emulator_embedded crate runs the emulator in-process, and your test passes its HTTP client to the SDK client. Telemetry can be turned off through the command-line option, the EMULATOR_TELEMETRY variable, or the config.toml file under ~/.aws/emulator. Individual gaps are tracked in the issues directory, split into things-that-do-not-work and things-that-now-work.

The codebase has 83,136 files and 1,223,210 symbols in 2 modules, written in Rust. Code health is 8.5 out of 10, rated excellent.