deps-npm 0.4.0

npm/package.json support for deps-lsp
Documentation

deps-npm

Crates.io docs.rs codecov License: MIT

npm/package.json support for deps-lsp.

This crate provides parsing and registry integration for the npm ecosystem.

Features

  • JSON Parsing — Parse package.json with position tracking
  • Lock File Parsing — Extract resolved versions from package-lock.json (v2/v3)
  • npm Registry — Client for npm registry API
  • Version Resolution — Node semver-aware version matching (^, ~, ranges)
  • Scoped Packages — Support for @scope/package format
  • EcosystemHandler — Implements deps_core::EcosystemHandler trait

Usage

[dependencies]
deps-npm = "0.2"
use deps_npm::{parse_package_json, NpmRegistry};

let dependencies = parse_package_json(content)?;
let registry = NpmRegistry::new(cache);
let versions = registry.get_versions("express").await?;

Benchmarks

cargo bench -p deps-npm

Parsing performance: ~3μs for small files, ~45μs for monorepo package.json.

License

MIT