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.