DEV Community

Cover image for MiniStack vs Spinifex: AWS Emulator vs Production Platform
Tom
Tom

Posted on Originally published at mulgadc.com

MiniStack vs Spinifex: AWS Emulator vs Production Platform

MiniStack and Spinifex both speak the AWS API. That surface similarity is what puts them in the same search results, but they're built for different stages of the software lifecycle. MiniStack is a development and CI testing tool. Spinifex is a production cloud platform. Teams that run both aren't hedging; they're using the right tool at each stage.

What MiniStack is

MiniStack is a free, MIT-licensed AWS emulator that emerged after LocalStack archived its Community Edition in March 2026. It runs on port 4566, covers 60+ AWS services, and requires no account or auth token. The Docker image is around 270 MB with roughly 30 MB idle memory, and startup is under two seconds.

The design choice that distinguishes MiniStack from other emulators is that it backs some services with real infrastructure. When your test code calls its RDS endpoint, a real PostgreSQL instance is handling the storage. ElastiCache maps to a real Redis instance. That backing means test behaviour for database-heavy workloads more closely mirrors what the production database will do, including edge cases in query behaviour that a pure mock might smooth over.

For teams whose biggest CI risk is database logic rather than AWS API surface coverage, MiniStack's real-infrastructure approach is a meaningful improvement over in-memory emulators.

What Spinifex is

Spinifex is an AWS-compatible cloud platform that runs on standard Linux bare metal hardware. It implements EC2, S3, IAM, EKS, and the rest of the common AWS service surface against real underlying infrastructure. When you call aws ec2 run-instances, it boots a real virtual machine using QEMU. EBS volumes are real block storage with real persistence. IAM policies are enforced across actual network boundaries. S3 is served by Predastore, which uses Reed-Solomon erasure coding to distribute objects across nodes so data survives hardware failures.

Spinifex runs fully offline, with no external control plane and no phone-home dependency. It installs from a release tarball on any x86_64 or ARM64 Linux server. The AWS CLI, Terraform with the AWS provider, eksctl, and any AWS SDK work against it with a single endpoint override.

Where they each fit

MiniStack belongs in your dev environment and CI pipeline. It gives your application code a realistic AWS surface to run against without cloud costs or credentials, and the real database backing means your ORM queries and migration code get a more honest workout than they would against a pure in-memory mock.

Spinifex belongs in production when that production environment is hardware you own. It's built for teams deploying to disconnected edge hardware, air-gapped secure facilities, and sovereign environments where data cannot leave infrastructure under direct control. The goal is that Terraform configs, IAM policies, and application code written for AWS run unchanged on your own hardware, because the API they're calling is the same API.

What emulators can't catch

MiniStack's real-database backing improves test fidelity for a specific class of problem, but the emulator model has structural limits that matter when correctness at the margins is the requirement.

An emulator intercepts API calls and returns plausible responses. What it doesn't do is enforce real IAM policy evaluation against real principals, manage real VM lifecycle state, or replicate the durability and concurrency behaviour of a production storage system under load. These aren't gaps in MiniStack specifically; they're inherent to the emulator category. Emulators are optimised for development speed, not production parity.

For teams whose production target is AWS, this gap is bridged by deploying to real AWS for final validation. For teams whose production target is hardware they own, there is no "real AWS" step in the pipeline. Spinifex is what fills that position: the same API, on the hardware that is the production environment.

Getting started

MiniStack documentation and installation instructions are at ministack.org. Spinifex documentation, including the air-gapped installation guide and Terraform workbooks, is at docs.mulgadc.com. The source is on GitHub, written in Go and AGPL-3.0 licensed. The free sandbox lets you test the API against a live Spinifex instance before deploying on your own hardware.

Top comments (0)