Semantic Version Calculator — Bump, Compare & Validate Semver
Calculate semantic version bumps (major, minor, patch, pre-release), parse and validate semver strings, compare two versions, and check whether a version satisfies a range expression (^, ~, >=, hyphen). All calculations run in your browser.
How to Use Semantic Version Calculator — Bump, Compare & Validate Semver
How to Use the Semantic Version Calculator:
Enter the Current Version: Type or paste a semver string into the Current Version field. The tool validates it instantly and displays the parsed components (Major, Minor, Patch, Pre-release, Build) as colour-coded badges below the input. A leading "v" prefix is accepted and stripped automatically.
Select a Bump Type: Choose a bump type by clicking one of the buttons. The top row covers stable releases: Patch (bug fix), Minor (new feature), Major (breaking change). The bottom row covers pre-release workflows: Pre-patch, Pre-minor, Pre-major, and Pre-release (increment an existing pre-release number).
Set the Pre-release Identifier (optional): If you select a pre-* bump type, an identifier field appears. The default is "alpha" — change it to "beta", "rc", "next", or any valid identifier. The output will be formatted as version-identifier.0 (e.g. 2.0.0-rc.0).
Read the Bump Result: The new version appears prominently to the right of the original with an arrow. Click Copy to copy it directly to your clipboard.
Compare Two Versions: Scroll to the Compare Versions section and enter two semver strings. The comparison symbol (< = >) updates in real time. Pre-release precedence follows the semver spec: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-rc.1 < 1.0.0.
Check a Range Expression: In the Range Check section, enter a version and a range string to see if the version satisfies the range. Supported range syntax: caret (^1.2.3), tilde (~1.2.3), comparison operators (>=1.0.0 <2.0.0), and hyphen ranges (1.2.3 - 2.3.4). The result shows a green tick or red cross with a full explanation.
Load an Example: Click any example button below the version input to populate it with a real-world semver string. Range example buttons fill the Range Expression field.
Clear the Bump Section: Click Clear to reset the version input and bump type to defaults.
Common Use Cases:
- Release automation: Determine the correct next version before running npm version or a CI/CD release step.
- Changelog generation: Confirm bump types when writing changelogs — patch for fixes, minor for features, major for breaking changes.
- Dependency compatibility: Use the range checker to verify that a new library version satisfies your package.json range before upgrading.
- Pre-release workflows: Quickly cycle alpha.0 → alpha.1 → beta.0 → rc.0 → 1.0.0 during feature development.
- Code review: Validate that a proposed version bump in a PR follows semver rules.
- Multi-package monorepo: Calculate independent bumps for each package.
Tips and Best Practices:
- Build metadata (the +build part) is ignored in comparisons per the semver spec — 1.0.0+001 equals 1.0.0.
- A pre-release version has lower precedence than the release: 1.0.0-rc.1 < 1.0.0.
- Caret ranges (^) are the most common in package.json — they allow compatible upgrades within the same major version.
- Tilde ranges (~) are stricter — they only allow patch-level changes within the same minor version.
- In npm, the version 0.x.x behaves differently with caret: ^0.2.3 only allows >=0.2.3 <0.3.0 to protect unstable APIs.
- Always bump major for any change that breaks backward compatibility, even a small one.
- Use rc (release candidate) rather than beta for versions that are nearly stable.
Frequently Asked Questions
Most Viewed Tools
TOTP Code Generator — 2FA Testing Tool
Generate time-based one-time passwords from a TOTP secret key. Enter your base32 secret, choose a period and digit length, and get the current and next codes with a live countdown timer. Useful for testing and debugging 2FA integrations.
Use Tool →JSON to Zod — Schema Generator
Generate Zod validation schema code from a JSON sample object. Infers z.string(), z.number(), z.boolean(), z.array(), z.object(), and z.null() types automatically. Handles nested objects, arrays of objects with optional field detection, and outputs copy-ready TypeScript with import and z.infer type alias.
Use Tool →JSONL Formatter — Line-by-Line Validator
Format, validate, and inspect JSON Lines (JSONL) and NDJSON files. Validates each line individually, reports parse errors by line number, outputs compact JSONL or a pretty-print preview, and lets you download the cleaned file.
Use Tool →TLS Cipher Suite Checker — Strength Analyzer
Check TLS protocol version compatibility and cipher suite strength ratings against current best practices. Supports IANA and OpenSSL cipher names — rates each suite as Strong, Weak, or Deprecated and explains why.
Use Tool →Secret Scanner — API Key & Credential Detector
Scan pasted text, code, or config files for accidentally exposed API keys, tokens, passwords, and private keys. Detects 50+ secret types across AWS, GitHub, Stripe, OpenAI, and more — all client-side, nothing leaves your browser.
Use Tool →Password Entropy Calculator — Crack Time Estimator
Calculate the information-theoretic bit entropy of any password or API key. Detects character set pools automatically, shows the total number of possible combinations, and estimates crack time across five attack scenarios from rate-limited web logins to GPU cracking clusters.
Use Tool →TOML Config Validator — Syntax Error Finder
Validate TOML configuration file syntax and report errors with line numbers. Paste any TOML content — Cargo.toml, pyproject.toml, config.toml — and instantly see a green checkmark with key counts and structure stats, or a precise error message pointing to the exact line. Includes a collapsible JSON structure preview to confirm what was parsed.
Use Tool →Screen Size Converter — Diagonal Dimension Tool
Calculate screen width and height from diagonal size and aspect ratio. Convert between inches and centimeters for displays, TVs, and monitors with instant dimension calculations.
Use Tool →Related Development Tools
QR Code Generator — Downloadable PNG Output
FeaturedCreate custom QR codes for URLs, text, and contact info
Use Tool →TOML to JSON Converter — Config File Tool
Convert TOML configuration files to JSON format instantly. Paste any TOML — Cargo.toml, pyproject.toml, config.toml — and get clean, pretty-printed JSON output. Supports all TOML types: strings (basic, literal, multi-line), integers (decimal, hex, octal, binary), floats, booleans, datetimes, arrays, inline tables, tables, and arrays of tables.
Use Tool →JSONL Formatter — Line-by-Line Validator
Format, validate, and inspect JSON Lines (JSONL) and NDJSON files. Validates each line individually, reports parse errors by line number, outputs compact JSONL or a pretty-print preview, and lets you download the cleaned file.
Use Tool →HTML Table to CSV Extractor — Table Scraping Tool
Extract HTML table markup and convert it to clean CSV format. Paste any HTML snippet or full page source — the tool finds the table, parses thead and tbody rows, handles colspan and rowspan merging gracefully, and outputs a properly quoted CSV ready to download or paste into a spreadsheet. When multiple tables are found, switch between them with a click.
Use Tool →TOML Config Validator — Syntax Error Finder
Validate TOML configuration file syntax and report errors with line numbers. Paste any TOML content — Cargo.toml, pyproject.toml, config.toml — and instantly see a green checkmark with key counts and structure stats, or a precise error message pointing to the exact line. Includes a collapsible JSON structure preview to confirm what was parsed.
Use Tool →INI to JSON Converter — Config File Tool
Convert INI configuration files and Java .properties files to JSON format instantly. Paste any INI file — php.ini, app.ini, Windows .ini — or a Java .properties file with dotted keys and get clean, structured JSON output. Supports section headers, inline comments, quoted values, boolean coercion (true/false/yes/no/on/off), numeric parsing, continuation lines, and Unicode escapes.
Use Tool →JSON to TypeScript — Interface Generator
Generate TypeScript interfaces from JSON objects instantly. Infers types for strings, numbers, booleans, arrays, and nested objects. Detects optional fields from array element merging, handles null values, and outputs clean, ready-to-use interface definitions.
Use Tool →CSV Pivot Table Generator — Aggregation Tool
Group and aggregate CSV data by one or more columns to create summary pivot views. Supports Count, Sum, Average, Min, and Max aggregations with multi-column grouping. Paste or upload any CSV, select group-by columns and aggregation type, and download the pivot summary as a new CSV file. Runs entirely in your browser.
Use Tool →Share Your Feedback
Help us improve this tool by sharing your experience