Caret and tilde ranges in package.json look simple until you actually need to know whether a specific version satisfies one. This tool answers that instantly, and shows the comparison logic behind the answer.
What Is the Semver Checker?
The Semver Checker parses two semantic version strings (or a version and an npm-style range) and reports whether one is higher, lower, or equal, and whether the version satisfies the given range.
How to Use It
- Open the tool at /tools/semver-checker.
- Enter a version in the first field, like
1.4.2. - Enter a second version or a range (
^1.3.0,~2.0.0,>=1.0.0,1.2.x) in the second field. - See the parsed breakdown and comparison update live.
Key Features
- Full semver parsing, including prerelease and build metadata segments.
- Correct prerelease precedence rules per the semver spec (a prerelease is always lower than its release version).
- Caret, tilde, comparison, and wildcard range support, including npm’s special-case handling of pre-1.0 caret ranges.
- No installation needed — this replaces a quick
node -echeck or reaching for thesemvernpm package for a one-off comparison.
When to Use This Tool
- Deciding if it’s safe to bump a dependency within its declared package.json range.
- Debugging why an npm install resolved to an unexpected version.
- Learning the difference between caret and tilde ranges.
Try It Now
Open Semver Checker directly, or press ⌘K and type the tool name from anywhere on the site.
Part of the DevOps Tools collection on WebdevToolbox — free, browser-based developer tools with no login required.