Featured projects Get in touch

Church services · Live presentation · Offline-first

LumosCast

Keep up with the message.
Keep the room engaged.

LumosCast helps a church media team put the right Bible passage on screen as a speaker mentions it. It listens, finds the passage and prepares it for the operator, so there is less searching during a live service.

For
Church media teams
Role
Architecture and full build
Availability
macOS & Windows downloads
LumosPresenter console design showing scripture search, passage preview, and live presentation queue
LumosCast / LumosPresenterConsole design

What it makes possible.

01 / What makes it useful

A helping ear at the media desk

A Bible reference does not have to be spoken perfectly in one sentence. LumosCast uses the surrounding speech to help recognise book names, chapters and verses.

02 / What makes it useful

The operator keeps the final say

Suggested passages can be checked before they reach the screen. The listening assistant supports the person running the service while leaving them in control of what goes live.

03 / What makes it useful

Scripture even when the internet drops

Speech recognition and bundled Bible texts run on the computer. Core scripture presentation can continue without depending on an internet connection.

The everyday essentials.

Give the person at the media desk a clearer path from what is being said to what the congregation sees.

Listen as the speaker talks

Live listening picks up spoken Bible references and brings possible passages into the operator’s workflow.

Find a passage quickly

Search for scripture manually when needed, with bundled Bible translations available without an internet connection.

Preview before going live

Check a passage and prepare the next one before showing it to the room.

Serve the room and the livestream

Send the presentation to projectors and to OBS, the software used to produce a livestream.

Prepare the next moment

Queue passages so the operator can stay ready as the service moves forward.

Start from a desktop app

A desktop launcher starts the presentation system and helps the operator choose the microphone.

For the curiousBehind the buildExplore the architecture and tools.

Architecture

One process, from microphone to screen.

Hover or tap a component to trace its connections.

Desktop launcher

Starts and supervises the server, tray, microphone picker

  • Avalonia

Web host

Pipeline, minimal API and the event broadcaster

  • ASP.NET Core
  • SSE

Operator console

Search, preview, confirm and queue passages

  • React
  • Vite

Audio capture

Microphone input cut into speech at pauses

  • PortAudio
  • VAD

Speech engine

Local transcription, biased to scripture vocabulary

  • Whisper.net
  • sherpa-onnx

Reference parser

Finds references across utterances and scores confidence

  • Core
  • No dependencies

Display pages

One styled page per projector or OBS output

  • React

Scripture store

Bundled KJV, ASV and BSB for offline use

  • SQLite
  • Dapper

api.bible

Optional NIV, AMP and MSG, cached for 14 days

  • HTTP
  • Local cache
All connections
  1. Desktop launcher to Web host: starts, restarts
  2. Audio capture to Speech engine: speech chunks
  3. Speech engine to Reference parser: transcripts
  4. Reference parser to Scripture store: verse lookup
  5. Scripture store to api.bible: online translations
  6. Reference parser to Web host: detected verses
  7. Web host to Operator console: SSE + REST
  8. Web host to Display pages: SSE /events

Technology stack

What it is built with.

Host

  • .NET 10
  • ASP.NET Core Minimal API
  • Server-Sent Events

Speech and audio

  • Whisper.net
  • sherpa-onnx
  • PortAudio

Data

  • SQLite
  • Dapper
  • api.bible

Interface

  • React
  • Vite
  • Avalonia

Quality

  • xUnit
  • Golden-audio tests

Next project

Food retail · Ordering & shop management RabahFoods Ops