A free, open-source local AWS emulator that lets you run AWS-shaped services on your machine with no account or auth token.
ministackorg/ministack
Free, open-source local AWS emulator running 60+ AWS services on one port, compatible with boto3, AWS CLI and Terraform.
Open-source alternative to:LocalStack
- Stars
- 5,111
- Forks
- 538
- Open issues
- 21
- Last commit
- yesterday
What is it?
MiniStack is a local AWS emulator that lets developers run S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions and dozens of other AWS services on their own machine or in CI, without an AWS account. All services are exposed on a single endpoint, port 4566 by default, so existing boto3, AWS CLI, Terraform, CDK and Pulumi configurations only need their endpoint URL changed.
The project positions itself as a free alternative to LocalStack, whose core services are now behind a paid plan. It supports multiple accounts and regions on one endpoint: a 12-digit access key is used as the account ID, and the SigV4 region scopes state. Some services run real backends, such as RDS with Postgres or MySQL containers, ElastiCache with Redis or Valkey, and ECS tasks as Docker containers. Athena queries run through DuckDB in the full image.
The container has an internal API for test automation, including health checks, a reset endpoint to clear state between tests, and endpoints for inspecting SES emails, SQS messages and SNS SMS messages. It is written in Python and released under the MIT license.
Key features
- 01Emulates 60+ AWS services on a single port, including S3, SQS, DynamoDB, Lambda and Step Functions.
- 02Works with boto3, AWS CLI, Terraform, CDK and Pulumi by changing the endpoint URL.
- 03Isolates state per account (via access key) and per region.
- 04Runs real Postgres, MySQL, Redis and Valkey containers for RDS and ElastiCache.
- 05Provides a reset endpoint and inspection endpoints for use in test suites.
Use cases
- Running AWS-dependent integration tests in CI without real AWS credentials.
- Developing Lambda functions and event-driven workflows locally against emulated SQS, SNS and EventBridge.
- Testing Terraform or CDK infrastructure code before deploying to AWS.
- Replacing a paid LocalStack setup in local development environments.
Quick start
- 1
Install from PyPI
pip install ministack - 2
Start MiniStack (runs on port 4566)
ministack - 3
Verify the server is running
curl http://localhost:4566/_ministack/health
Things to know
- Athena SQL queries and some real-database features need the full Docker image, which is larger.
- RDS, ElastiCache, ECS and Lambda containers require mounting the Docker socket.
In collections
Topics
FAQ
- What is ministack?
- Free, open-source local AWS emulator running 60+ AWS services on one port, compatible with boto3, AWS CLI and Terraform. MiniStack is a local AWS emulator that lets developers run S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions and dozens of other AWS services on their own machine or in CI, without an AWS account. All services are exposed on a single endpoint, port 4566 by default, so existing boto3, AWS CLI, Terraform, CDK and Pulumi configurations only need their endpoint URL changed.
- Is ministack free to use? What license does it have?
- ministack is open source under the MIT license. Check the license terms before using it in commercial products.
- Is ministack still maintained?
- Actively maintained. The last commit to ministack was on Nov 6, 2026.
- What can I use ministack for?
- Running AWS-dependent integration tests in CI without real AWS credentials. Developing Lambda functions and event-driven workflows locally against emulated SQS, SNS and EventBridge. Testing Terraform or CDK infrastructure code before deploying to AWS. Replacing a paid LocalStack setup in local development environments.
- How do I install ministack?
- Install from PyPI: pip install ministack Start MiniStack (runs on port 4566): ministack Verify the server is running: curl http://localhost:4566/_ministack/health
- Where can I get ministack?
- The source code and installation instructions are on GitHub: https://github.com/ministackorg/ministack
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Terraform module for creating AWS Lambda functions and layers, with built-in dependency installation and deployment package building.
A local SMTP server that catches outgoing email during development and shows it in a web interface.
Free, open-source local Azure emulator that runs Azure-compatible services like Blob, Queue, Table, Functions and Cosmos DB on localhost:4577.
A drop-in CDK CLI that deploys existing CDK apps by calling AWS SDKs directly instead of going through CloudFormation, for faster dev and test deploys.
Runs Kubernetes clusters as Docker containers using vCluster, a lighter alternative to KinD with pause/resume and built-in load balancers.