Corpus
Grow the spoken-language index
Index videos, playlists, or channels. Search hits a subtitle index, not YouTube, and never treats a search result as an example until captions match.
Grow the corpus
Indexing is a local authoring step. Harvest on a development machine, run node scripts/export-corpus.mjs, then npm run corpus:push — that is what ships the corpus.
Ingestion
Backend sqlite · 0 searchable subtitle segments. Jobs stay retryable. Harvest searches YouTube in the requested language, queues new videos and channels, then indexes captions.
No queued jobs.

