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

Analyzes package bundle-friendliness.

Checks for ESM support, tree-shaking capability, sideEffects field,
and other indicators of bundle efficiency.

# `analyze`

```elixir
@spec analyze([{String.t(), map()}]) :: map()
```

Analyzes bundle-friendliness across packages.

# `grade`

```elixir
@spec grade(non_neg_integer()) :: String.t()
```

Categorizes bundle-friendliness.

# `recommendations`

```elixir
@spec recommendations(map()) :: [String.t()]
```

Generates recommendations for improving bundle-friendliness.

# `score`

```elixir
@spec score(map()) :: non_neg_integer()
```

Scores a package's bundle-friendliness (0-100).

---

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