Hide irrelevant changes, detect moved code, and highlight refactorings in your diffs. Supports Python, Rust, Java, C#, TypeScript and more.
Supports 12+ programming languages and data exchange formats:
You can try a subset of SemanticDiff’s features directly in your browser.
Go ahead and select one of the examples or enter your own code.
SemanticDiff is a programming language aware diff that distinguishes between relevant and irrelevant changes. Irrelevant changes such as added/removed whitespace, optional commas or unnecessary parentheses are hidden to help you focus on the actual changes. Relevant changes are further analyzed to highlight moved code, renames or other refactorings. This helps you understand code changes faster, especially when working with reformatted or refactored code.
Why spend time on reviewing the output of your code formatter? Let the CI validate the code style, while you concentrate on the logic changes.
Not convinced? Compare GitHub with SemanticDiff.
When moving a lot of code, it is easy to overlook that print statement you added while debugging. It is buried in a huge hunk of red and green lines. Wouldn’t it be great if your diff tool would highlight such modifications?
See it live in action.
Refactorings are often simple but can affect many lines of code. Checking all the individual changes is often too tedious so that other unintended changes get overlooked. SemanticDiff assists you by automatically separating refactorings from other code changes.
Get updates on our SemanticDiff VS Code Extension and GitHub App, and be the first to know about new devlogs, tutorials, and blog posts.
Do not hesitate to contact us if you have any questions or feedback.
We look forward to hearing from you.