# getmoto/moto

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/getmoto-moto).**

8,217 stars · 2,175 forks · Python · apache-2.0

## Links

- GitHub: https://github.com/getmoto/moto
- Homepage: http://docs.getmoto.org/en/latest/
- awesome-repositories: https://awesome-repositories.com/repository/getmoto-moto.md

## Topics

`aws` `boto` `ec2` `s3`

## Description

Moto is a cloud service mockery framework and API mock server that simulates AWS infrastructure locally. It allows developers to test cloud-dependent code and verify infrastructure-as-code templates without deploying real resources or incurring costs.

The project functions as an SDK interceptor that can patch existing service clients to redirect requests to a local mock environment. It can also be run as a standalone HTTP server, enabling any programming language to interact with the simulated endpoints.

The framework covers a vast array of simulated capabilities, including data storage, compute and hosting, identity and access management, AI and machine learning, and networking. It further supports the simulation of complex environments through account-based resource isolation and simulated access control to mimic multi-tenant cloud logic.

## Tags

### Development Tools & Productivity

- [Cloud Service Simulators](https://awesome-repositories.com/f/development-tools-productivity/cloud-service-simulators.md) — Runs a standalone HTTP server that mimics cloud endpoints to enable rapid iteration and testing across any programming language.
- [API Interception Proxies](https://awesome-repositories.com/f/development-tools-productivity/development-environment-management/cloud-service-emulation-interception/api-interception-proxies.md) — Proxies and mocks all cloud service calls to ensure compatibility with various SDKs without live infrastructure. ([source](http://docs.getmoto.org/en/latest/docs/proxy_mode.html))
- [Local Lambda Simulation](https://awesome-repositories.com/f/development-tools-productivity/local-development-environments/local-lambda-simulation.md) — Provides local simulation of cloud function environments, including function creation and invocation. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [SDK Client Patching](https://awesome-repositories.com/f/development-tools-productivity/sdk-client-initialization/sdk-client-patching.md) — Intercepts instantiated cloud service clients at runtime to route traffic to a local mock environment.
- [Global Mocking Settings](https://awesome-repositories.com/f/development-tools-productivity/global-configurations/global-mocking-settings.md) — Allows updates to mock service behaviors and execution settings via remote API endpoints. ([source](http://docs.getmoto.org/en/latest/docs/configuration/index.html))

### DevOps & Infrastructure

- [Cloud Service Mocks](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure/cloud-service-mocks.md) — Implements local versions of AWS service APIs to simulate behavior and verify application logic without live infrastructure.
- [Cloud Deployment Simulation](https://awesome-repositories.com/f/devops-infrastructure/cloud-deployment-simulation.md) — Simulates cloud-provider resource lifecycles to test infrastructure-as-code templates and application logic on local hardware.
- [CloudFormation Templates](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure-deployment/managed-infrastructure-deployment/infrastructure-deployment-provisioning/cloudformation-templates.md) — Simulates the validation and creation of infrastructure-as-code stacks using CloudFormation templates. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Infrastructure Resource Mocks](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure-deployment/managed-infrastructure-deployment/infrastructure-deployment-provisioning/cloudformation-templates/infrastructure-resource-mocks.md) — Provides simulated representations of cloud resources to verify infrastructure-as-code templates without deploying to real environments. ([source](http://docs.getmoto.org/en/latest/docs/services/cf.html))
- [Distributed Task Orchestration](https://awesome-repositories.com/f/devops-infrastructure/distributed-task-orchestration.md) — Simulates the orchestration of containerized tasks and the management of cluster definitions. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Kubernetes Cluster Management](https://awesome-repositories.com/f/devops-infrastructure/kubernetes-cluster-management.md) — Simulates the provisioning and lifecycle management of Kubernetes clusters and nodegroups. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Auto-scaling Policies](https://awesome-repositories.com/f/devops-infrastructure/auto-scaling-policies.md) — Simulates scaling policies and the registration of scalable targets for cloud applications. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [CI/CD Automation Servers](https://awesome-repositories.com/f/devops-infrastructure/ci-cd-automation-servers.md) — Simulates the creation of projects and the starting of cloud build jobs. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [CI CD Pipelines](https://awesome-repositories.com/f/devops-infrastructure/ci-cd-pipelines.md) — Simulates the creation and update of continuous delivery pipelines. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Multi-Tenant Simulations](https://awesome-repositories.com/f/devops-infrastructure/cloud-deployment-simulation/multi-tenant-simulations.md) — Simulates complex multi-tenant environments through account-based resource isolation and identity and access management permissions.
- [Auto Scaling Groups](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure/cloud-computing-serverless/serverless-execution-environments/auto-scaling-groups.md) — Simulates auto scaling groups, launch configurations, and dynamic capacity adjustments. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Container Image Management](https://awesome-repositories.com/f/devops-infrastructure/container-image-management.md) — Simulates container repository management and image scanning. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Deployment Simulators](https://awesome-repositories.com/f/devops-infrastructure/deployment-orchestration/deployment-simulators.md) — Simulates the creation of deployment groups and the execution of deployments. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Git Repository Mocking](https://awesome-repositories.com/f/devops-infrastructure/git-repository-mocking.md) — Simulates the creation and deletion of cloud-hosted git repositories. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Job Scheduling](https://awesome-repositories.com/f/devops-infrastructure/job-scheduling.md) — Simulates job queue management and the submission of compute jobs. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Task Schedulers](https://awesome-repositories.com/f/devops-infrastructure/task-schedulers.md) — Simulates the creation and management of scheduled tasks. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))

### Data & Databases

- [Bucket Management](https://awesome-repositories.com/f/data-databases/object-storage/bucket-management.md) — Provides simulation of the administrative lifecycle for object storage buckets and their contained objects. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [State Inspection Interfaces](https://awesome-repositories.com/f/data-databases/application-state-management/state-inspection-interfaces.md) — Provides a dashboard for visual inspection of the current state of mocked cloud resources. ([source](http://docs.getmoto.org/en/latest/docs/server_mode.html))
- [In-Memory State Stores](https://awesome-repositories.com/f/data-databases/in-memory-databases/in-memory-state-stores.md) — Stores simulated cloud resources in volatile memory to eliminate external database dependencies during tests.

### Networking & Communication

- [API Response Simulators](https://awesome-repositories.com/f/networking-communication/network-traffic-processors/api-response-simulators.md) — Simulates cloud infrastructure behavior by dynamically constructing API responses based on request parameters.
- [Publish-Subscribe Messaging](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/messaging-notification-systems/messaging-services/message-broker-infrastructure/publish-subscribe-messaging.md) — Simulates the creation of topics and the publishing of messages using a pub-sub model. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))

### Operating Systems & Systems Programming

- [Virtualization Management](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-management.md) — Provides a simulation environment for managing virtual machine instances, network interfaces, and security groups. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))

### Security & Cryptography

- [Account-Based Resource Isolation](https://awesome-repositories.com/f/security-cryptography/account-management/account-synchronization/account-instance-managers/trial-account-isolation/account-based-resource-isolation.md) — Isolates mocked resources by account identifiers to simulate multi-tenant cloud environments. ([source](http://docs.getmoto.org/en/latest/docs/multi_account.html))
- [User Role Management](https://awesome-repositories.com/f/security-cryptography/identity-access-management/identity-management/user-management/user-role-management.md) — Simulates IAM user, group, and role management including policy attachment for identity testing. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Secret Encryption](https://awesome-repositories.com/f/security-cryptography/secret-encryption.md) — Simulates key management services for encrypting, decrypting, and signing sensitive data. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Secret Retrieval Utilities](https://awesome-repositories.com/f/security-cryptography/secret-management/secret-retrieval-utilities.md) — Simulates the creation, rotation, and retrieval of secret values from a managed store. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Access Control](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control.md) — Simulates identity and access management behavior by authenticating and authorizing simulated cloud requests. ([source](http://docs.getmoto.org/en/latest/docs/iam.html))

### Software Engineering & Architecture

- [SDK Call Interceptors](https://awesome-repositories.com/f/software-engineering-architecture/request-interception-middleware/model-call-interceptors/sdk-call-interceptors.md) — Intercepts low-level SDK calls to redirect API requests to a local mock environment. ([source](http://docs.getmoto.org/en/latest/docs/getting_started.html))

### Testing & Quality Assurance

- [Cloud Service Mocks](https://awesome-repositories.com/f/testing-quality-assurance/cloud-service-mocks.md) — Implements a comprehensive framework for simulating AWS services locally to test cloud-dependent code without live API calls.
- [HTTP Mock Servers](https://awesome-repositories.com/f/testing-quality-assurance/http-mock-servers.md) — Hosts a standalone HTTP server that mimics cloud service endpoints for cross-language testing. ([source](http://docs.getmoto.org/en/latest/docs/getting_started.html))
- [SDK Compatibility Testing](https://awesome-repositories.com/f/testing-quality-assurance/sdk-compatibility-testing.md) — Ensures SDKs interact correctly with emulated services to verify application logic before live deployment.
- [Mock State Resetting](https://awesome-repositories.com/f/testing-quality-assurance/general-testing-utilities/test-utilities-assertions/test-data-management/test-mock-management-tools/mock-state-resetting.md) — Clears all created resources across all mocked backends via an API endpoint to ensure test isolation. ([source](http://docs.getmoto.org/en/latest/docs/server_mode.html))

### Part of an Awesome List

- [IoT Simulation Tools](https://awesome-repositories.com/f/awesome-lists/devtools/iot-simulation-tools.md) — Provides a simulated environment for testing IoT core definitions and deployment workflows. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [Workflow](https://awesome-repositories.com/f/awesome-lists/devtools/state-machines/workflow.md) — Simulates the creation and execution of cloud-based state machines for workflow orchestration. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))

### Hardware & IoT

- [IoT Device Provisioning](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/device-management/iot-device-provisioning.md) — Simulates the provisioning and onboarding process for IoT device instances. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))
- [IoT Message Ingestion](https://awesome-repositories.com/f/hardware-iot/iot-message-ingestion.md) — Simulates the ingestion and publishing of messages and thing shadows for IoT devices. ([source](https://github.com/getmoto/moto/blob/master/IMPLEMENTATION_COVERAGE.md))

### System Administration & Monitoring

- [Account-Based Resource Isolation](https://awesome-repositories.com/f/system-administration-monitoring/usage-monitoring/account-based-resource-isolation.md) — Provides logical separation of mocked cloud resources by account identifiers to prevent test collision in multi-tenant simulations.
