Fast, private diffs in your browser.

Rust → WebAssembly · runs entirely in your browser · nothing is ever uploaded

ORIGINAL 0 chars · or drop a file
drop file to load
CHANGED 0 chars · or drop a file
drop file to load
// nothing you paste or drop ever leaves this tab — the diff runs locally
loading engine…
+0 −0 paste text above to see the diff

Milliseconds, not seconds

Myers diff implemented in Rust, compiled to WebAssembly. On an everyday diff it runs about even with jsdiff, the standard JavaScript library — both finish a 5,000-line file in under two milliseconds. The payoff is the worst case: jsdiff's time climbs with the number of edits, while this engine's is capped.

5,000-line file · this engine1.52 ms
5,000-line file · jsdiff1.85 ms
near parity on a typical diff; on a 3,000-line rewrite jsdiff takes 1.15 s and this engine 22 ms. medians on committed fixtures: scripts/bench-vs-js.mjs · all benchmarks

Your text never leaves the browser

100% client-side. Compare contracts, source code, or other sensitive text without sending the content to a server. After the engine loads, diffing in the open tab needs no network connection.

Open source core

The Rust diff engine is MIT-licensed. Audit it, embed it, or use it in your own Rust application.

$ cargo add diffwtf-core