Project
Roulette

Unit Converter

Type '20 miles in km' and get the answer before you finish typing.

BeginnerWeb appTool6–14hAI-buildable 4/5no setupworth shipping

A converter driven by natural language rather than dropdowns. Parsing free-text input — a number, a source unit, a target unit, with aliases and plurals — is far more interesting than wiring up two select elements, and much nicer to use.

UI
Logic
Useful

Hosting · Free forever

Deploys free on GitHub Pages, Cloudflare Pages or Vercel Hobby.

Deploy it and share a link.

Core features · 7

  • A single input parses value, source unit and target unit
  • Unit aliases, abbreviations and plurals are recognised
  • Results update live as you type
  • Length, mass, volume, temperature, area and data units are supported
  • Ambiguous input offers a disambiguation choice
  • Unparseable input gives a helpful message rather than nothing
  • Recent conversions are listed

The interesting part

  • Parsing free text robustly without a grammar explosion
  • Temperature conversions being offset-based rather than ratio-based
  • Unit names that collide across measurement systems

Once it works

  • Add compound units like miles per hour
  • Add currency with live rates
  • Add a full expression mode like '5ft 3in in cm'

Suggested stack

reacttypescripttailwind

Track it