DevToolsmith

SemVer Calculator

Compare semantic versions, sort release lists, check npm version ranges and calculate the next major, minor, patch or prerelease version. All checks run locally.

Runs 100% in your browser — nothing is uploaded

Versions to sort and filter
Tip: drop a file here37 chars · 37 bytes · 5 lines
Version analysis
0 chars · 0 bytes · 0 lines

Strict SemVer 2.0.0 inputs · npm range syntax · Local processing · Up to 2,000 listed versions.

Compare versions by meaning

Version 1.10.0 is newer than 1.2.0; alphabetical sorting would give the wrong answer. A prerelease such as 2.0.0-beta.1 comes before 2.0.0. Build metadata such as +linux does not affect precedence.

Check a dependency range

The range ^1.2.0 normally accepts 1.2.3 and 1.10.0 while excluding 2.0.0. A range starting below 1.0.0 has narrower caret rules. Prerelease versions are normally excluded unless a comparator explicitly targets that prerelease series or you enable prerelease inclusion.

Plan the next release

Select major, minor or patch for a stable increment. Choose prerelease, premajor, preminor or prepatch with an identifier such as beta to plan a preview. Release removes an existing prerelease designation. Inputs are limited to 256 characters per version and 2,000 listed versions; numeric components must fit the npm parser's supported integer range.

Frequently asked questions

How are prerelease and build identifiers ordered?

Prereleases sort before their corresponding stable release. Numeric prerelease identifiers compare numerically and sort below nonnumeric identifiers. Build metadata does not change SemVer precedence.

Which version range syntax is supported?

Ranges follow npm semver: comparisons, caret and tilde ranges, wildcard/x ranges, hyphen ranges and OR clauses. Prerelease inclusion is explicit. Version inputs require MAJOR.MINOR.PATCH without a v prefix; invalid versions are reported instead of silently coerced.

Is a range check an upgrade safety guarantee?

No. It checks version syntax and range membership, not the actual compatibility or security of a package. Review release notes and test your application before upgrading.