Quick start

Register a project

From the project's directory:

spinup my-app

spinup scans the project, writes .spinup.yml, installs a my-app command and registers the directory. Each service in the generated file has a comment saying where its command came from.

To review what was detected before anything is written, use the guided setup:

spinup --init

Look before launching

my-app --plan        # start order, directories, dependencies, readiness
my-app --doctor      # config, detection, tools, problems
my-app --check       # just the problems; exits 2 when the action cannot run
my-app --dry-run     # everything a launch resolves, including busy ports

Launch

my-app

From any directory. A project with one service runs in the foreground with prefixed output; with several, in a tmux workspace that you are attached to.

Change what runs

.spinup.yml is yours to edit. Add services, split a monorepo into one service per application, add actions such as a migration, or set readiness conditions. See configuration, then check the result:

my-app --edit        # opens the file in $VISUAL or $EDITOR
my-app --plan        # confirms the start order

Manage a tmux workspace

my-app --status
my-app --restart api
my-app --attach
my-app --stop

Other actions

A generated config can contain several actions, such as docker or prisma-migrate:

my-app --action prisma-migrate

Try a config without registering

In any directory with a .spinup.yml:

spinup --start

Nothing is registered and no command is installed.