01 The brief: what was hard
A small church tells the same week at least three times: in the printed bulletin, on its website, and in the title and description of its Sunday stream. Volunteers retold it by hand, copying the same facts from one place to the next.
The facts also change late. The music director sends a proposed song list before rehearsal, and rehearsal cuts songs. On a guest-speaker week the bulletin prints TBA. A mistake does not sit quietly on a page. It goes up on the sanctuary screen and out on the stream, live.
The people who run it are volunteers, not a media team. Many readers are on phones in the pew. So the weekly job had to be short, and every page had to be easy to read.
02 The process
I started from the document the church already makes, so there is no new form to learn. The bulletin uses the same labels every week, so a plain rules-based parser reads it, not a model. No model guesses at a date or a verse.
Then I settled which source wins. The music director's song file is a draft. The bulletin is the approved set. On the first live Sunday the song file held five songs and the bulletin held three. The song file fills the library early, so the words are ready before the bulletin arrives. Only the bulletin decides what Sunday plays.
AI goes where taste matters: the sermon art. Gemini writes the art direction from the sermon, and a Gemini image model paints it. The brief is a brand standard, written down. It takes the season from the service date, after an August sermon came back with snow on the ground. It bans each cliché the model kept reaching for, from the still life on a wooden table to fantasy forests and beams of light. It also rotates the style per sermon, so the weeks don't all look the same.
I verify it the way Sunday will use it. Before a service, I run the whole path in a browser with that week's real files. One pass caught a guest week: the bulletin printed TBA and named no preacher, and the system would have filled in the usual pastor's name. Now that field turns amber, and publishing takes a second press that names each problem.
03 The machine, station by station
- intakeA volunteer drops in the bulletin PDF the church already makes each week.
- readA rules-based parser pulls out the date, sermon, scripture, songs, readings and notices, and flags anything missing or marked TBA.
- wordsThe song library supplies each song's words, and the bulletin, not the draft song file, sets the order Sunday plays.
- artGemini writes the art direction from the sermon, and a Gemini image model paints the website picture and the stream thumbnail inside a written brief.
- review and publishThe volunteer checks every field, the images and the broadcast details, then presses publish, and a flagged field needs a second press.
- publishThe website's week updates, the YouTube broadcast is scheduled with its title and thumbnail, and the Sunday screens get their running order.
04 The result
- 1 → 2One bulletin upload updates the website's week and sets up the Sunday broadcast, title and thumbnail included.source: live on the church's own site since 2026-08-16 (not linked)
- 5 stepsThe volunteer's whole weekly job: upload, check, song words, images, publish. Nothing goes public until the last step.source: the church's publishing tool, used each week (not linked)
- 31 / 31Screens correct in a full Sunday run-through, each one checked on the room screen, the stream, the phone page and the watch page.source: pre-service run-through, 2026-10-04 (internal QA report)
I built it for the church: I design, direct and verify AI-built systems, and the church's volunteers run this one each week.
Also built for the same client:
- A three-way lyric reader: one tap moves the sanctuary screen, the stream overlay and a phone page to the same words in about 1.5 seconds, and a new volunteer learns it from a two-page guide.
- A 125-year history archive for the church: 75 dated entries, each graded by its source, browsable by era, with a form staff use to add new records. Live since 2026-05-16.
- A song-licence usage report built from the weeks already published, so the church's filing is no longer an evening with a hymnbook.
