Relatives

A TypeScript engine that turns any measurement into a relatable comparison, ranking 919 curated facts across 13 dimensions to find the one that actually lands.

Maintained Updated 5mo ago

Relatives turns an abstract measurement into something you can picture.

Ask it about 70 micrometers and it answers: about as thick as a human hair. It's a TypeScript comparison engine — a framework-agnostic core library paired with a SvelteKit frontend — that ranks 919 curated real-world facts across 13 dimensions (length, mass, time, energy, data, pressure, and more) to surface the comparison that actually lands.

Picking a good comparison

Ranking the matches is the interesting problem. The numerically closest fact often reads as the least relatable, so closeness is scored on two factors. Proximity measures distance from a perfect match on a log scale, so 2x and ½x count as equally far off.

A nice-number multiplier rewards ratios a person can actually say out loud: "twice as long" or "ten times heavier" wins over a technically-closer 7.3x, because round multiples are the ones that stick.

Each fact also carries hand-assigned relatability and accuracy ratings, and the final ranking is a weighted blend of all three, with live sliders in the UI to favor the closest match, the most familiar one, or the most precise.

The frontend leans into that immediacy: results re-rank as you type, the input box accepts shorthand like 5k, 1e6, or 2^10, and ratios are spelled out in words — scaling all the way up to "1.3 million times" or a googol when the numbers get absurd.

§02

Gallery

Built with
Demo Svelte Tool TypeScript Web App