diffsitter creates semantically meaningful diffs that ignore formatting
differences like spacing. It does so by computing a diff on the AST (abstract
syntax tree) of a file rather than computing the diff on the text contents of
the file.

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

Supported languages: Bash, C#, C++, CSS, Go, Java, OCaml, PHP, Python, Ruby,
Rust, Typescript/TSX and HCL

diffsitter is very much a work in progress and nowhere close to production
ready (yet). Contributions are always welcome!

Homepage:
https://github.com/afnanenayet/diffsitter/
