Semver Range

Check npm version ranges and increment SemVer releases, including prereleases.

About this tool

Enter a complete version once, then choose Range or Increment. Check explicitly or press Enter. Ranges use npm syntax: comparators, spaces for AND, || for OR, ^, ~, x/*, partial versions and hyphen ranges. An empty range means any stable version.

Prereleases only match a comparator set that explicitly mentions a prerelease with the same major.minor.patch. Build metadata does not affect matching. Expand the result to inspect the normalized comparator range.

Increments follow npm conventions: patch promotes 1.2.3-beta.2 to 1.2.3, while prerelease advances beta.2 to beta.3. Prepatch/preminor/premajor start a prerelease of the next component. An optional identifier such as beta selects its sequence; blank uses the numeric sequence. Build metadata is removed. The tool cannot determine whether your code change is compatible.

Strict parsing; an optional lowercase v prefix is accepted. Limits: 256 characters per version, core components up to 9007199254740991, 4096 characters per range and 128 per identifier. Numeric prerelease identifiers are compared and incremented exactly even above that integer limit. Input stays in browser RAM during navigation; reload restores the example. No uploads or persistent storage.