Skip to main content

diff.rs

A web application which lets you visualize the differences between versions of Rust crates, to quickly see what changed. It is somewhat responsive and makes uses of caching to be quite fast.

It lives entirely in the browser: it has no backend. It is able to fetch a crate’s source, uncompress and unpack it, and run a diff algorithm over it, all in the browser and in a split second. This is made possible thanks to Rust’s support for WebAssembly. It can use Rust crates and they (mostly) just work.

This project was an exploration into the Rust frontend web development for me. I used it to explore the Yew framework, which lets you write Rust WebAssembly frontends using a React-like component model.

Links:

Architecture #

Screenshots #

Searching for a crate.

Searching for a crate

Viewing the differences between two crate versions.

Viewing the differences between two crate versions

Milestones #

DateDescription
2024-09-18Syntax highlighting support (contributed by Nika)
2024-04-02Verify hashes of crate sources
2024-04-02Migrate to Tailwind CSS for layout and theme
2023-03-17Fold unchanged lines (contributed by Raphael)
2023-02-12First commit