# `Igniter.Project.Deps`
[🔗](https://github.com/ash-project/igniter/blob/v0.8.3/lib/igniter/project/deps.ex#L5)

Codemods and utilities for managing dependencies declared in mix.exs

# `add_dep`

Adds a dependency to the mix.exs file.

```elixir
|> Igniter.Project.Deps.add_dep({:my_dependency, "~> X.Y.Z"})
```

# Options

- `:yes?` - Automatically answer yes to any prompts.
- `:append?` - Append to the dependency list instead of prepending.
- `:error?` - Returns an error instead of a notice on failure.
- `:on_exists` - The action to take if the dep is already present
  - `:overwrite` (default) - Overwrites with the new depenency
  - `:skip` - Skips adding the dependency

# `add_dependency`

> This function is deprecated. Use `add_dep/2` or `add_dep/3` instead..

# `fetch_hex_api_url_and_headers`

# `get_dep`

```elixir
@spec get_dep(Igniter.t(), name :: atom()) ::
  {:ok, nil | String.t()} | {:error, String.t()}
```

Gets the current dependency declaration in mix.exs for a given dependency.

# `get_dependency_declaration`

> This function is deprecated. use `get_dep/2` instead, which can return ok/error tuple.

Gets the current dependency declaration in mix.exs for a given dependency.

# `has_dep?`

Returns true if the given dependency is in `mix.exs`

# `remove_dep`

Removes a dependency from mix.exs

# `set_dep_option`

```elixir
@spec set_dep_option(Igniter.t(), atom(), atom(), quoted :: term()) :: Igniter.t()
```

Sets a dependency option for an existing dependency

---

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