Floci: Locally emulating any cloud service
Floci: Locally Emulating Any Cloud Service
Floci provides high-performance local cloud emulators, allowing you to run major cloud environments on your own machine. Stop waiting for remote deployments and start shipping faster with a credential-free, millisecond-startup loop designed for both human developers and AI agents.
☁️ Choose Your Cloud
Floci supports the "Big Four" cloud providers. Each emulator is optimized for minimal overhead and maximum compatibility.
| Provider | Port | Service Count | Key Metrics | Primary Services Covered |
|---|---|---|---|---|
AWS (floci-aws) | 4566 | 119 | S3, SQS, Lambda, DynamoDB, RDS, EKS | |
Azure (floci-az) | 4577 | 28 | Blob, Queue, Table, Functions, Key Vault | |
GCP (floci-gcp) | 4588 | 25 | MIT License | GCS, Pub/Sub, Firestore, Cloud Run, GKE |
OCI (floci-oci) | 4599 | 8 | MIT License | Object Storage, Identity, Queue, Streaming |
🤖 Engineered for AI-Assisted Development
Modern coding agents can generate cloud infrastructure code at lightning speed, but executing that code against a live production or staging account is dangerous.
The Floci Philosophy: Give your AI agents a cloud environment they cannot break.
Instead of risky remote calls, point your agents at Floci. This creates a safe, local sandbox where agents can:
- Iterate Rapidly: Spin up, test, and destroy resources within the edit loop.
- Ensure Parity: Since Lambda, Redis, and Kafka run for real, local verification equals production behavior.
- Fail Safely: If an agent makes a mistake, they simply reset a local container rather than
inflating your cloud billor crashing your staging environment.
The AI Development Loop
🛠️ Tooling & Management
Floci provides two primary ways to interact with your local clouds:
1. floci-cli (The Command Line)
A unified interface to manage all emulators across AWS, Azure, GCP, and OCI.
Quick Install (macOS / Linux):
curl -fsSL https://floci.io/install.sh | sh
Common Commands:
floci start— Launch the emulator.floci doctor— Diagnose your environment.
2. floci-ui (The Visual Dashboard)
A comprehensive GUI to browse resources and inspect data across all supported clouds.
- Browse: S3 Buckets, DynamoDB Tables, SQS Queues.
- Inspect: Lambda Logs, Azure Blob Storage, and more.
🚀 Why Choose Floci?
Floci is built for developers who prioritize speed and safety.
- Blazing Fast: With a startup time of , it integrates seamlessly into the inner-loop.
- Versatile Deployment:
- CI/CD: Each job gets an isolated cloud; teardown is essentially free.
- Local Dev: Work offline without shared dev accounts or rotating credentials.
- Education: Students can run full stacks locally without needing credit cards for account provisioning.
- Infrastructure as Code (IaC): Test your
Terraform,OpenTofu, orCloudFormationtemplates againstlocalhostto catch drift and typos before they hit the cloud.
Getting Started Checklist
- Install
floci-cli - Start a local emulator
- Configure SDK endpoints to
http://localhost - Run your first local test
💻 Implementation Examples
AWS (macOS/Linux)
# Install and start
curl -fsSL https://floci.io/install.sh | sh
floci start
eval $( floci env )
# Interact via AWS CLI
aws s3 mb s3://my-bucket
echo "Why pay for S3 when floci is free? 🎉" > hello-floci.txt
aws s3 cp hello-floci.txt s3://my-bucket/
aws s3 cp s3://my-bucket/hello-floci.txt hello-back.txt
cat hello-back.txt
AWS (Windows PowerShell)
# Install and start
irm https://floci.io/install.ps1 | iex
floci start; floci env | Invoke-Expression
# Interact via AWS CLI
aws s3 mb s3://my-bucket
"Why pay for S3 when floci is free? 🎉" | Out-File hello-floci.txt
aws s3 cp hello-floci.txt s3://my-bucket/
aws s3 cp s3://my-bucket/hello-floci.txt hello-back.txt; Get-Content hello-back.txt
Docker Deployments
AWS (Port 4566)
docker run --rm -p 4566:4566 -v /var/run/docker.sock:/var/run/docker.sock floci/floci:latest
# Configure CLI
export AWS_ENDPOINT_URL=http://localhost:4566
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test
Azure (Port 4577)
docker run --rm -p 4577:4577 floci/floci-az:latest
# Configure Azure CLI
export AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://localhost:4577/devstoreaccount1;"
az storage container create -n my-container
echo "Azure locally, no bill, no drama. 🚀" > hello-floci.txt
az storage blob upload -c my-container -f hello-floci.txt -n hello-floci.txt
GCP (Port 4588)
docker run --rm -p 4588:4588 floci/floci-gcp:latest
# Configure gcloud CLI
export CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE=http://localhost:4588/
export CLOUDSDK_CORE_PROJECT=floci-local
gcloud storage buckets create gs://my-bucket
echo "No billing alert? ☁️" > hello-floci.txt
gcloud storage cp hello-floci.txt gs://my-bucket/