Problem: The Strong's lexicon data is in English. Dutch-speaking users viewing the interlinear popup in Dutch mode should see Dutch definitions and meaning alternatives.
Solution: Dutch translations of Strong's definitions, primary glosses, and meaning alternatives stored in dedicated _nl columns. Plus word-level Statenvertaling alignment (sv_gloss) generated via AI.
Not included: A complete Dutch lexicon from scratch. These are translations of the existing English Strong's data.
When the UI is in Dutch, the interlinear popup shows Dutch definitions and meaning alternatives instead of English.
What shows in Dutch mode:
strongs_greek.definition_nl instead of definitionprimary_gloss_nl computationmeanings_nl (JSON array of 10-15 Dutch alternatives)greek_words.sv_gloss — the Statenvertaling equivalent of each Greek wordsv_gloss with Dutch example versesSame popup layout — just Dutch text where English would be. Automatic based on settings.language.
Dutch data columns:
strongs_greek: definition_nl (5,503 entries), primary_gloss_nl, meanings_nl (JSON array)strongs_hebrew: same three columnsgreek_words.sv_gloss — per-word SV alignment (generated by scripts/align-sv-glosses.ts via Claude Sonnet)Fallbacks:
meanings_nl empty → falls back to parsing definition_nlsv_gloss equivalent → Dutch OT display uses heuristic matching against verses.text_nlFiles:
packages/db/src/schema/bible.ts — _nl columns on strongs tables, svGloss on greek_wordsscripts/align-sv-glosses.ts — Claude Sonnet Greek→SV word alignment scriptapps/web/src/lib/components/bible/InterlinearPopup.svelte — Dutch rendering logicCurrent: IN_PROGRESS Milestone: v2
What's done:
What remains:
meanings_nl entries may be empty (enrichment script not run on all entries)Dependencies: