Semver Range Tester
Check whether a version satisfies a semver range like ^1.2.0.
Does this version satisfy the range?
Dependency ranges like ^1.2.0 decide which versions an install will accept, and misreading them causes surprising upgrades. This tester tells you whether a specific version satisfies a given range and explains why.
Version 1.4.2 satisfies ^1.2.0 because the caret allows any 1.x at or above 1.2.0 but below 2.0.0. Switch to ~1.2.0 and 1.4.2 no longer qualifies, since the tilde locks the minor version.
Clear and private
It parses the version and range in your browser and computes the answer locally, so nothing you enter is uploaded.
Frequently Asked Questions
Which operators are supported?
Exact versions, comparison operators (>=, >, <=, <), the caret ^ (compatible minor/patch), and the tilde ~ (patch-level within a minor).
What does the caret mean?
^1.2.0 allows any 1.x.y at or above 1.2.0 but below 2.0.0 — updates that keep the major version, which npm treats as compatible.
Is this the full npm semver spec?
It covers the common single-comparator and caret/tilde cases. Complex combined ranges may need a full semver library.
Browse the full set of free, private, in-browser tools.