GitHub Repos beginner 3 min read May 11, 2026
Public Preview Sign in free for the full digest →

Floci: 24ms local AWS emulation in a Docker container

“LocalStack Community was archived in March 2026 — this Java tool launched 48 hours before that, boots in 24ms, and costs nothing.”

Floci: 24ms local AWS emulation in a Docker container
1 Views
0 Likes
0 Bookmarks
Source · github.com

“"24ms startup is the real story. You can treat it as disposable: fresh instance per test run." — 4riel (https://news.ycombinator.com/item?id=47471801)”

You know that feeling when your integration tests hit real AWS and you're paying per API call just for CI runs — or watching a test fail because someone else's test left a dirty S3 bucket in the shared dev account? LocalStack Community Edition was the standard fix: run a local fake AWS on port 4566, tests finish in milliseconds, CI stays deterministic. Then LocalStack archived its Community Edition on March 23, 2026 and added a mandatory auth token requirement, leaving every team that relied on the free tier with no maintained replacement and a pile of suddenly-broken CI pipelines.

awsdevtoolsdockerjavatestingci-cdopen-source

Floci runs as a single Docker container on port 4566 — the same port LocalStack used. When your code makes an AWS SDK call to SQS, DynamoDB, or S3, the request hits Floci's in-process handler instead of the real AWS. For stateful services that need genuine engine behavior — Lambda, RDS, EKS — Floci spins up real Docker child containers: your Lambda runs in an actual AWS Lambda runtime, your RDS call connects to a real PostgreSQL instance. Quarkus Native (GraalVM AOT compilation) compresses the JVM startup from seconds into 24ms. You set any dummy AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY, point the SDK endpoint at localhost:4566, and existing init scripts from /etc/localstack/init/ run unchanged.

01
24ms cold start — spin a fresh Floci instance per test suite, tear it down after, and eliminate shared state between test runs entirely
02
Real Docker engines for Lambda, RDS, EKS, ElastiCache — Lambda invocations run in actual AWS runtime containers; RDS gives you a real PostgreSQL connection so engine-specific SQL and connection-pool bugs surface in CI before production
03
Drop-in LocalStack replacement on port 4566 — same dummy credentials, same API wire protocol, same /etc/localstack/init/ init scripts; migration is a one-line docker-compose.yml change
04
No account, no auth token, no feature gates — pull floci/floci:latest and run; no sign-up, no API key expiry to rotate in CI secrets
05
Four storage modes: memory (default, ephemeral), persistent (survives restarts), hybrid (5-second async flush), WAL (per-mutation logging) — match durability to your test fidelity requirements
06
1,925 self-reported compatibility tests across 6 AWS SDKs and 3 IaC tools — covers Terraform, CloudFormation, and CDK against Java, Python, Node.js, Go, Ruby, and .NET SDKs
07
Multi-account isolation via 12-digit access keys — different teams share one Floci instance without leaking state across accounts; the access key IS the account ID
Who it’s for

If you're a backend engineer running AWS integration tests in CI — especially S3, SQS, DynamoDB, Lambda, or RDS — and your team was using LocalStack Community Edition before March 2026, Floci is the lowest-friction replacement. It's also worth evaluating if you're setting up a new project and want deterministic AWS testing without cloud costs. Not useful yet if you need Windows compatibility (open issue #739 as of 2026-05-12), or if you depend on services outside Floci's 46-service catalog.

Worth exploring

Worth testing immediately if your team migrated off LocalStack Community Edition in March 2026 — the migration is wire-compatible and takes less than one sprint. The v1.0 to v1.5.14 pace in 8 weeks shows strong shipping cadence, but two open issues should stop you before full production CI adoption: issue #695 (LocalStack env-var compatibility incomplete) and the Docker socket mount as root (a container escape risk in shared runners). Run your full test suite in a spike before committing.

Developer playbook
Tech stack, code snippet, sentiment, alternatives.
PM playbook
Adoption angles, user fit, positioning.
CEO playbook
Traction signals, ROI, build vs buy.
Deep-dive insight
Full long-form analysis, no fluff.
Easy mode
Core idea, fast — when you need the gist.
Pro mode
Technical nuance, edge cases, tradeoffs.
Read the full digest
Go beyond the preview

Deep-dive insight, Easy and Pro modes, plus action playbooks — the full breakdown is one tap away.

Underrated tools. Unfiltered takes.

Read the full digest in the Snaplyze app for deep-dive insight, Easy and Pro modes, and the playbooks you can actually use.

Install Snaplyze →