# `NPM.Install.Link`
[🔗](https://github.com/elixir-volt/npm_ex/blob/v0.7.4/lib/npm/install/link.ex#L1)

Manages local package linking via symlinks.

Implements `npm link` functionality — creates symlinks in
node_modules pointing to local package directories for development.

# `link_info`

```elixir
@type link_info() :: %{name: String.t(), target: String.t(), link_path: String.t()}
```

# `link`

```elixir
@spec link(String.t(), String.t()) :: {:ok, link_info()} | {:error, term()}
```

Links a local package into node_modules.

# `linked?`

```elixir
@spec linked?(String.t(), String.t()) :: boolean()
```

Checks if a package is linked (symlinked, not installed normally).

# `list`

```elixir
@spec list(String.t()) :: [link_info()]
```

Lists all linked packages in node_modules.

# `unlink`

```elixir
@spec unlink(String.t(), String.t()) :: :ok | {:error, term()}
```

Unlinks a package from node_modules.

---

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