Guide

Why stack?

stack runs your project's languages, databases, and dev server as plain processes on your own machine. No Docker, no virtual machine, nothing running when you're not working.

The problem

Local dev setup on Windows has three well-worn paths, and each one costs you something:

What stack does instead

Every project gets a stack.toml — one file, checked into the repo, that says which language versions and services it needs. Run stack setup once per machine; from then on, cd into any project and its exact toolchain is already active, no container, no manual switching.

Pinned per project

Two projects, two different PHP versions, running at the same time, with zero conflict — each one only sees its own stack.toml.

A real domain, automatically

myapp.localhost resolves the moment you run stack up — no hosts file, no admin rights, via Caddy.

HTTPS with no warning

The same domain works over https:// too. stack trusts a local CA once, the same way mkcert does.

Actually off when it's off

stack down --all stops every process it started. No idle VM burning battery in the background.

What this isn't

Honest tradeoffs, not a sales pitch:

Next

Getting Started — install stack and bring up your first project in three commands.