Church Translate, as it runs at the campuses

Live sermon translation into 100+ languages, running entirely on one Mac per
campus: audio in, voice detection, Whisper on the GPU, NLLB-200 in its own
process, and a built-in web server the congregation reads from on their
phones. No audio leaves the building.

This is the source only. What used to sit beside it — 14 GB of speech and
translation models, 8 GB of voice bundles, 6 GB of natural voices, the Electron
caches, and the app data holding the operator PIN and every service transcript
— is machine state and downloaded assets, and stays in the NAS backup where it
belongs. The vendored node, cloudflared and Windows ffmpeg binaries are out too
(533 MB, re-fetched for packaging); the browser-side runtime beside them is
kept, so a checkout still serves the congregation page.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-23 15:41:21 -04:00
co-authored by Claude Opus 5
commit c9eef0672c
118 changed files with 36031 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
{
"_note": "English-side inventory. The canonical spellings a preacher's transcript should contain, and the vocabulary whose TARGET-side rendering has to be checked. This file asserts nothing about other languages.",
"books": [
"Genesis","Exodus","Leviticus","Numbers","Deuteronomy","Joshua","Judges","Ruth",
"1 Samuel","2 Samuel","1 Kings","2 Kings","1 Chronicles","2 Chronicles","Ezra",
"Nehemiah","Esther","Job","Psalms","Proverbs","Ecclesiastes","Song of Solomon",
"Isaiah","Jeremiah","Lamentations","Ezekiel","Daniel","Hosea","Joel","Amos",
"Obadiah","Jonah","Micah","Nahum","Habakkuk","Zephaniah","Haggai","Zechariah","Malachi",
"Matthew","Mark","Luke","John","Acts","Romans","1 Corinthians","2 Corinthians",
"Galatians","Ephesians","Philippians","Colossians","1 Thessalonians","2 Thessalonians",
"1 Timothy","2 Timothy","Titus","Philemon","Hebrews","James","1 Peter","2 Peter",
"1 John","2 John","3 John","Jude","Revelation"
],
"people": [
"Jesus","Christ","Jesus Christ","God","Holy Spirit","Lord","Father","Son of God",
"Adam","Eve","Noah","Abraham","Sarah","Isaac","Rebekah","Jacob","Esau","Rachel","Leah",
"Joseph","Moses","Aaron","Miriam","Joshua","Caleb","Gideon","Samson","Samuel","Saul",
"David","Solomon","Elijah","Elisha","Isaiah","Jeremiah","Ezekiel","Daniel","Jonah",
"Nehemiah","Ezra","Esther","Ruth","Naomi","Boaz","Job",
"Mary","Martha","Elizabeth","Zechariah","John the Baptist","Simon","Simon Peter","Peter",
"Andrew","James","John","Philip","Bartholomew","Thomas","Matthew","Thaddaeus",
"Judas","Judas Iscariot","Matthias","Paul","Saul of Tarsus","Barnabas","Silas",
"Timothy","Titus","Philemon","Stephen","Luke","Mark","Apollos","Priscilla","Aquila",
"Lazarus","Nicodemus","Zacchaeus","Pilate","Herod","Caesar","Cornelius","Lydia"
],
"places": [
"Jerusalem","Bethlehem","Nazareth","Galilee","Judea","Samaria","Jericho","Bethany",
"Capernaum","Gethsemane","Golgotha","Calvary","Mount Sinai","Mount of Olives",
"Egypt","Babylon","Assyria","Damascus","Antioch","Corinth","Ephesus","Philippi",
"Thessalonica","Colossae","Galatia","Rome","Athens","Macedonia","Patmos",
"Zion","Canaan","Jordan River","Red Sea","Sea of Galilee","Eden"
],
"terms": [
"gospel","covenant","new covenant","apostle","disciple","Pharisee","Sadducee",
"Gentile","Sabbath","Passover","Pentecost","Messiah","salvation","grace","mercy",
"repentance","redemption","atonement","righteousness","justification","sanctification",
"propitiation","resurrection","crucifixion","ascension","kingdom of God",
"kingdom of heaven","parable","prophet","prophecy","psalm","epistle","scripture",
"the Word","tabernacle","temple","altar","sacrifice","priest","high priest",
"baptism","communion","the Lord's Supper","faith","hope","love","sin","forgiveness",
"eternal life","heaven","hell","Satan","the devil","angel","cherubim","seraphim"
],
"liturgical": {
"_note": "Whole-utterance constants. These are the highest-frequency short lines in preaching and the ones NLLB corrupts worst — measured: 'Amen.' becomes 'Yes, I am fine.' in Spanish. Matched only as an ENTIRE utterance, never as a substring.",
"keys": [
"amen","hallelujah","alleluia","hosanna","praise God","praise the Lord",
"thank you Jesus","glory to God","come on","let us pray","in Jesus name",
"in Jesus' name","god bless you","god is good","hello","hello hello",
"good morning","good evening","welcome","turn with me","open your Bibles",
"let me read that again","are you with me","can I get an amen"
]
}
}