Getting an honest translation is only half the job. The letters also had to become a story — connected across decades, explained where they assume things a modern reader wouldn't know, and honest about which parts are solid and which are educated guesses.
Under the hood — a more technical look, and how the AI was kept honest
The architecture is deliberately rigorous and opinionated. It isn't a loose bag of scripts that happen to produce a website; it's a designed system with a point of view about honesty, and that view is enforced in the structure itself. The central principle is a strict division of labour: the work is split among a chain of specialists — a transcriber, a translator, an archivist, an editor — each with exactly one job and a clean handoff to the next. No single step is trusted to do everything, and no later step is allowed to quietly rewrite what an earlier one established. That separation is what lets the system be genuinely honest rather than merely careful.
First, the transcriber and the translator. The transcriber is Transkribus, a handwriting-recognition model trained specifically on this era's Yiddish script; it turns the strokes on a scan into text. Then the translators — more than one AI model, working independently — render it into English, and their readings are compared so agreement is earned rather than assumed. Every hand-off is saved as structured, labelled data, not loose text, and nothing is ever overwritten: when a later reading disagrees with an earlier one, both are kept, so a genuine uncertainty is remembered instead of quietly smoothed away.
Then, the archivist. Picture a meticulous archivist who keeps a card catalogue — one drawer for people, one for places, one for dates, one for the photographs. Every person, place, date, and photo the letters mention gets its own card in the matching registry. This archivist is strict: nothing is filed as a fact until it's actually confirmed — a card starts life stamped “unverified” and is only promoted deliberately — and every card notes exactly which page it came from and how sure we are. Where two readings disagree, the archivist keeps both cards rather than picking a favourite. And this archivist never sleeps or cuts corners: the catalogue audits itself, and if any card points to a source that doesn't exist or claims a fact with no page behind it, the whole thing refuses to open for business until it's fixed.
Then, the editor. The archivist's catalogue holds everything the letters actually support — the full, honest record, warts and gaps included. But not all of it belongs on a public page, and the same true fact can be told well or badly. So a second role sits above the archivist: an editor, working from a running list called the manifest, who makes the taste calls — which items to show, in what order, with what wording. The division of labour is deliberate: the archivist guards what's true, the editor decides how to tell it, and neither is allowed to do the other's job. So if something is historically wrong, the archivist corrects the record; if it's merely told better or worse, the editor changes the manifest — and the truth and the telling never get tangled up in each other.
Last, giving the material shape — a living system. From that one honest catalogue the same material is laid out in different ways — a browsable shelf of letters, a woven story, a family roster — each drawn from the archivist's records, so no version can wander off and invent its own account of events. Nothing here is a static web page hand-built once; the whole site is regenerated from the data. Correct a name at the root, rebuild, and the fix appears everywhere at once — on the letter, in the story, on the roster — with nothing patched by hand. It's less a finished website than a living record that can keep growing as more of the family's story surfaces.
Where the AI fits — and where it deliberately doesn't. Much of this was built with two AI assistants working alongside the two of us, one paired with each person. Their role is broader than it might seem: the same models both wrote the software — the pipeline, the honesty checks, the site itself — and did the interpretive work of translating the letters, drawing out recurring themes, and shaping the raw material into a narrative. But the design draws a hard line around what AI is allowed to decide. It reads, translates, drafts, and builds — it never gets the final word on what's true. A person confirms every reading; an AI's confident-sounding guess carries no more weight than that, and where the letters are too damaged to know, the honest answer is to say so rather than let a machine paper over the gap. The goal was never to hand family history to a computer — it was to use these tools carefully enough that a family with no Yiddish reader left could recover its own story without quietly inventing the parts it couldn't recover.
The tools that made it possible. For anyone curious about the actual stack:
- Transkribus — handwriting recognition trained on real early-20th-century Yiddish script. It did the first pass at turning the handwriting into text (and it's the only tool trusted to read the Yiddish, precisely because it was measured against known pages).
- Claude — did double duty: wrote the software (pipeline, honesty checks, the site) and the interpretive work (translation, theme extraction, shaping the narrative).
- Gemini — a second, independent translator, used as a cross-check: where it and Claude agreed we trusted it more, and it was never allowed to quietly overrule the primary reading.
- ComfyUI (soon) — for regenerating the illustrated portraits from recipes, so even the artwork stays reproducible rather than hand-made once and forgotten.