Stacktora - Define once, run anywhere.
by•
This is developer onboarding infrastructure.
The end of configuration drift for every engineer — it’s over.
Stacktora isn't a docker-compose generator. It's the workflow that keeps every developer's environment identical, current, and runnable — from the first clone to the hundredth hire.
Define your stack — languages, databases, services — and Stacktora generates a production-ready, runnable bootstrap: docker-compose, Makefile, CI, and 15+ files. Clone, to running in minutes.

Replies
Spun up a Node Postgres Redis stack in a couple minutes and everything just ran on first try. The Makefile targets are a nice touch, saves a ton of tribal knowledge going to new team members.
@elifeakekep6oh Thanks so much for giving it a spin! That first-run experience is exactly what we obsess over. If a developer can clone, generate, and get running without fighting their environment, we've done our job.
I'm especially glad you called out the Makefile. It's one of those small details that can eliminate a surprising amount of tribal knowledge and onboarding friction across a team. That's ultimately what Stacktora is about—making your stack repeatable, shareable, and consistent from day one.
Really appreciate you taking the time to test it, and if you have any ideas or rough edges you run into, I'd genuinely love to hear them. We're building this alongside the developer community. 🚀
We're onto something 🤫
stacktora is an npm package you run via npx.
To run your stack defined in stacktora.json, navigate to the directory containing that file and run:
bash
If the tool requires the config file as an argument (some tools do, some default to stacktora.json), try:
bash
T
o confirm the correct usage, you can check the help menu first:
bash
It is built for CI and AI agents.
The result below is a DeepSeek test:
(DeepSeek) A few things to keep in mind:
Make sure you're in the right folder (where stacktora.json lives).
npx will download the package temporarily if you don't have it installed globally. If you want to install it globally instead: npm install -g stacktora then just run stacktora.
If you run into any errors (e.g., file not found, permission issues, or invalid JSON), paste the error message back here and I'll help you debug.
We rolled out out new branding now that we are in full-ship. We hope to make a mark!
CLI & stacktora.json
Every project includes a stacktora.json — a small, secret-free record of your stack (runtime, datastores, services, ports, options). The official Stacktora CLI reads that file and regenerates your project's files locally, using the exact same engine as this site — no account, no network, fully offline.
Path to production
Local compose is for development. Two optional outputs give you a real path out of it, and they solve different problems — pick based on how you actually want to run this in production.
Kubernetes mirrors your whole stack onto a cluster. Toggle it on and Stacktora generates k8s/manifests.yaml — a namespace, a Secret with your app env, a Deployment + Service for the app, and a Deployment + Service + PersistentVolumeClaim for each stateful datastore. In-cluster hostnames match the Service names, so your connection strings work unchanged.
The included k8s/README.md is explicit that this is a starting point — before real production add Ingress + TLS, resource requests/limits, liveness/readiness probes, an autoscaler, and proper secret management (Sealed Secrets / external-secrets), and prefer managed datastores where you can. Once you're running for real, node-level cost optimization (Karpenter, Cast AI) is the natural next stop — outside what Stacktora generates, but worth knowing about.
Fly.io is the simpler option if you don't want to run a cluster. Toggle it on and Stacktora generates fly.toml — but be clear about what it does: Fly deploys your app container only, not a multi-service stack. It doesn't run docker-compose-style setups from one config file the way a cluster can.
The included fly/README.md lists the exact attach command for each datastore you selected — Postgres and Redis have first-party managed options on Fly; anything else needs its own small Fly app or an external managed provider, and the README says so plainly rather than pretending otherwise.