A worked example, rendered from real sample data. Sign in to run the tool on your own input.
{"name":"my-app","version":"1.0.0","dependencies":{"react":"^18.2.0","next":"^14.0.0","axios":"*"},"devDependencies":{"typescript":"~5.3.0","eslint":"^8.0.0","react":"^18.2.0"}}my-app 1.0.0
License: none declared · module type: commonjs
Dependencies: 5 total — 3 prod, 3 dev, 0 peer, 0 optional
Ranges: 3 caret, 1 tilde, 0 exact, 1 loose
Engines: not declared
Findings — 1 error · 4 warnings · 4 notes
ERROR axios axios is pinned to "*" — every install can pull a different major [loose-range]
→ "axios": "^1.0.0"
WARN description "description" is missing [missing-description]
WARN license "license" is missing [missing-license]
→ "license": "MIT" (or "UNLICENSED" for private code)
WARN exports No main, exports or bin field — consumers have nothing to import [no-entry-point]
WARN react react is listed in both dependencies and devDependencies with the same range — remove one [duplicate-dependency]
→ keep "react": "^18.2.0" in dependencies only
NOTE repository "repository" is missing — npm links it on the package page [missing-repository]
NOTE engines No engines.node range — CI and hosts will guess the Node version [no-engines]
→ "engines": { "node": ">=20" }
NOTE scripts No scripts defined [no-scripts]
NOTE scripts No "test" script — most CI templates call npm test [no-test-script]
This runs offline — it never contacts the npm registry, so it cannot report advisories or newer versions.
Detect duplicate dependencies and common issues. Part of the DevTools Surf developer suite. Browse more tools in the API / Config collection.