Web app
Muscle Nerds KB
Search across Luke Leaman's podcast appearances. Every result shows the chapter of the original episode it comes from.
View- Status
- Live
- First commit
- 17 September 2026
- Initial Muscle Nerds knowledge base
- Stack
- Rails 8.1, SQLite, sqlite-vec, Solid Queue, RubyLLM, OpenRouter, Kamal
Why I built it
Luke Leaman of Muscle Nerds has been a guest on dozens of podcasts. Training, nutrition, coaching, health. The knowledge is spread across many shows and hours of audio. I’m a YPSI coach with an A license, I train seriously myself, and I wanted to look up what Luke says about cortisol or protein needs. With the spot in the episode, not a summary out of thin air.
The Muscle Nerds KB is my own project, not an official offering from Muscle Nerds or Luke Leaman.
What it does
- You ask a question, and the search finds matching passages in the transcripts. Every result is tied to the original chapter of the episode.
- Every episode has chapters, a transcript with speaker names and a link to the audio source.
- New appearances are found through Podcast Index and Taddy. A model checks whether Luke is really a guest. Best-of episodes and compilations get dropped.
- Currently over 80 episodes with around 1,350 chapters are public.
Technical decisions
Hybrid search that keeps working without a model. Full text via SQLite FTS and 1,024-dimensional vectors in sqlite-vec, merged with Reciprocal Rank Fusion. If keys or embeddings are missing, search falls back to plain full text. Everything lives in one SQLite file behind a Rails app.
Diarization as a versioned run. Five-minute chunks with five seconds of overlap, limited retries, neutral speaker IDs. Nothing is published until every speaker has a name, and then it goes out in one step.
Only the public catalog. The database holds more episodes than are publicly visible. The restriction is part of every public query and both search branches, not just the UI.
Anything that costs money has to be started explicitly. Import and status are free. Embeddings, entities and diarization run through separate paid commands with a fixed budget. All models go through OpenRouter and RubyLLM.
The project shares a lot with AskTNT: longform-transcript for long transcriptions and chapter alignment, podcast-source-adapters for uniform episode data from RSS, Taddy and Podcast Index.
From the sessions
On day one I ran the answer models against a frozen benchmark with a hard limit of five dollars. It spent 22 cents. Gemini 3.6 Flash cost about $0.0004 more per answer than the preview version, with equally good citations. I still went with the stable version and recorded it in the repo as a deliberate exception to my own cost rule.
The same day, the official logo came out again. I didn’t have permission to use it. Since then the header says “Unofficial” and the footer says the archive isn’t affiliated with Muscle Nerds.