All work
Custom SoftwareLanguage input & accessibility tooling

Yiddish XT9

A compact, offline-first Yiddish text-entry tool: a numeric keypad mapped to Yiddish letters, with a local prediction engine that turns digit sequences into ranked Yiddish words and composes them right-to-left — packaged for Android with Cordova.

Mobile engineer — Cordova app

yiddish xt9
live
9:41Yiddish XT9
tap a key…
engine· offline · 15,626 wordsready
digit sequence
T9
exact matches0
no exact match yet
fuzzy · levenshtein0
no near sequences
candidate0/0press 0 to cycle
01The problem

Where it started.

T9 — typing words by tapping a numeric keypad — was built for Latin alphabets: each digit holds a few letters and software predicts the word. None of that maps to Yiddish. The letters group differently, the text runs right-to-left, and the prediction has to know Yiddish words, not English ones.

The need was specific and unglamorous: let someone type Yiddish quickly from a numeric keypad — hardware or on-screen — and have it predict the right word. No cloud, no account; it had to work on the device, offline.

Off-the-shelf keyboards don't cover this. It needed a purpose-built keypad mapped to Yiddish letter groups, a right-to-left composer, and a prediction engine that understood Yiddish and ran entirely on the phone.

02The approach

How I thought about it.

I built it as a single-screen Cordova Android app: a custom 12-key keypad mapped to Yiddish letter groups, a right-to-left output area, and a browser-side prediction engine. Key presses become a T9 digit sequence, matched against a Yiddish word list bundled with the app.

The prediction pipeline is the heart of it. An exact digit-sequence match returns the candidate words, ranked by how common they are; when the exact sequence isn't enough, Levenshtein distance finds nearby sequences and folds those in as suggestions; and pressing 0 cycles through the alternatives. The whole 15,626-word dictionary ships in the app bundle, so it all happens offline — no server, no latency.

03What I built

The thing itself.

yiddish xt9
live
9:41Yiddish XT9
tap a key…
engine· offline · 15,626 wordsready
digit sequence
T9
exact matches0
no exact match yet
fuzzy · levenshtein0
no near sequences
candidate0/0press 0 to cycle
  • Yiddish T9 keypadA 12-button keypad with Yiddish letter groups, plus delete, space, and symbol handling — built for numeric-keypad input.
  • Right-to-left composerThe output area is explicitly RTL and updates word-by-word as you type.
  • Predictive T9 engineMaps each digit sequence to dictionary entries and ranks exact matches by popularity.
  • Fuzzy correctionLevenshtein distance suggests nearby T9 sequences when the exact one isn't enough.
  • Candidate cyclingPressing 0 cycles through the alternative predictions for the current sequence.
  • Offline dictionaryShips a 15,626-entry Yiddish word list with popularity and T9 codes in the app bundle — no network.
04The result

What changed.

Yiddish words appear as you tap the keypad, predicted from a local dictionary and composed right-to-left.

It runs fully offline — the dictionary and the prediction pipeline live in the app bundle, so there's no server, account, or latency.

Generic numeric input is replaced with Yiddish-specific letter mapping, ranked prediction, and candidate cycling.

It's packaged for Android with Cordova — a small, focused utility rather than a heavy app.

Outcomes are qualitative — no client metrics shown.

05The stack

Under the hood.

Apache CordovaAndroidJavaScriptHTML/CSSLevenshtein
Your project, next

Got a process that
should run itself?

Tell me where the work piles up. I'll show you what a calmer, quieter version of it looks like — built around how your team already works.