# `NPM.Diagnostics.EnvCheck`
[🔗](https://github.com/elixir-volt/npm_ex/blob/v0.7.4/lib/npm/diagnostics/env_check.ex#L1)

Environment checks for npm_ex.

Detects available Node.js installations, npm configuration,
and checks compatibility with package engine requirements.

# `check_engines`

```elixir
@spec check_engines(%{required(String.t()) =&gt; String.t()}) ::
  :ok | {:warn, [String.t()]}
```

Check if a package's engine requirements are met.

Compares the `engines` field from package.json against the
currently available Node.js version.

# `node_version`

```elixir
@spec node_version() :: {:ok, String.t()} | :not_found
```

Check if Node.js is available on the system PATH.

Returns `{:ok, version}` or `:not_found`.

# `summary`

```elixir
@spec summary() :: map()
```

Get a summary of the current environment.

Returns a map with system info relevant to npm operations.

---

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