Every layer

Twelve subsystems, one install.

None of these is a plugin you add later or a service you host separately. They ship together, share the same models and config, and are typed against each other, which is the only reason a rename can be safe across all of them.

Build

The application itself: what it serves and who may see it.

Run

The work that happens around a request rather than inside it.

Ship

Proving it works, then putting it somewhere.