diffsitter - A tree-sitter based AST difftool to get meaningful semantic diffs

See it in action

diffsitter performs diffs on text files using the AST to compute the diff instead of using a naive text-based diff. This can give you more semantically meaningful diff information, which will prevent diffs from getting polluted by formatting differences, for example.

diffstter uses the parsers from the tree-sitter project to parse source code. As such, the languages supported by this tool are limited by the languages supported by the tree-sitter project.

A prefect diff tool shows the difference of two files semantically. It is unfortunately only for Rust language but it is very inspiring.