Calculator

What the Semver Checker does

Semver Checker: checks Status, Verdict and Details from What to do, Version and Range (npm syntax). Example: what to do Does a version satisfy a range?, version 1.4.2 and range (npm syntax) ^1.2.0 || >=2.0.0-beta.1 <3 gives verdict Satisfies.

Supply What to do, Version, Range (npm syntax) and Other version and you get Status, Verdict and Details back. Edit a field and the answer updates in place.

Typical users are developers debugging a payload. Spotting a malformed field is far quicker when the structure is laid out clearly.

Payloads stay in the tab, so you can safely paste production data without it reaching a third party.

The rest of this page documents each field, the method, and a worked example built from the values the semver checker loads by default.

What do the Semver Checker fields mean?

The Semver Checker uses 5 inputs. You can work from the defaults, or clear them and start fresh, both work.

FieldWhat to enterDefault
What to do choose from Does a version satisfy a range?, Compare two versions or Sort a list of versions Does a version satisfy a range?
Version required 1.4.2
Range (npm syntax) optional ^1.2.0 || >=2.0.0-beta.1 <3
Other version optional 1.10.0
Versions (one per line or comma-separated) paste or type any amount of text 1.0.0, 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-beta, 1.0.0-rc.1, 0.9.12, 2.0.0, 1.10.0, 1.2.3

How does the Semver Checker work?

Status, Verdict and Details ← f(What to do, Version, Range (npm syntax), Other version, Versions (one per line or comma-separated))

Each output is derived from the inputs above in a single pass; there is no hidden state carried between runs, so the same inputs always give the same check.

Values are checked first: an out-of-range or non-numeric entry names the offending field instead of returning nonsense.

Worked example

These are the values the Semver Checker loads by default, and the result it produces from them. Here is the calculation as it stands the moment the page loads.

Inputs
What to doDoes a version satisfy a range?
Version1.4.2
Range (npm syntax)^1.2.0 || >=2.0.0-beta.1 <3
Other version1.10.0
Versions (one per line or comma-separated)1.0.0, 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-beta, 1.0.0-rc.1…
Result
Status1.4.2 satisfies ^1.2.0 || >=2.0.0-beta.1 <3
VerdictSatisfies
Detailsmajor 1 minor 4 patch 2 prerelease (none) build (none) Range "^1.2.0 || >=2.0.0-beta.1 <3"…

How to use it

  1. Pick a value for What to do: the options are Does a version satisfy a range?, Compare two versions or Sort a list of versions.
  2. Key in Version.
  3. Fill in Range (npm syntax).
  4. Type Other version.
  5. Paste your content into Versions (one per line or comma-separated).
  6. The tool reacts immediately rather than waiting for you to finish the form.
  7. The results panel then shows Status, Verdict and Details.
  8. Copy Link is the quickest way to send the exact scenario to someone else.

What this tool does not do

  • Output follows the common convention for this format; a specific toolchain may have its own house style.
  • Processing happens in your browser, so very large inputs are bounded by available memory.
  • Results are informational: check anything consequential against a second source.

Frequently asked questions

You need What to do, Version, Range (npm syntax), Other version and Versions (one per line or comma-separated). Nothing starts empty, letting you treat it as a what-if tool rather than a data-entry form.

With the values loaded when the page opens, status comes out as 1.4.2 satisfies ^1.2.0 || >=2.0.0-beta.1 <3. Any edit re-runs the calculation, so there is no stale number on screen.

Not at all: the whole thing runs offline once the page has loaded, which tells you nothing is being sent.

Nothing at all. There is no registration, no paywall and no per-use quota.

The check is exact for the method described above. Where a value is rounded for display, the underlying figure keeps full precision.

YoursTools Team
Product & Engineering

Builds and maintains every calculator on YoursTools.