# `Starter.Runner`
[🔗](https://github.com/jamilabreu/starter/blob/v0.4.2/lib/starter/runner.ex#L1)

Expands and runs a starter's steps against an igniter.

You rarely call this directly — `use Starter` wires it up for you.

# `installs`

```elixir
@spec installs(
  module(),
  keyword()
) :: [atom()]
```

Returns the packages a run of `starter` would install, in step order,
with optional steps resolved against `opts`.

These are added to `mix.exs` and fetched before any step runs, so this is
the set whose dependency changes reach disk ahead of the run's diff.

# `run`

```elixir
@spec run(Igniter.t(), module(), keyword()) :: Igniter.t()
```

Runs every step of `starter` in order, skipping optional steps whose
flag is absent from `opts`.

Warns when the target app's Phoenix requirement is older than the
supported series (1.8).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
