I’ve found myself becoming an avid listener of the Changelog podcast of late. I enjoy Jerod and Adam’s interview style and the topics. Recently I went poking around in the Changelog’s GitHub repos and found a repo containing transcripts from all episodes.

Something else I discovered recently is Typesense, an “open source alternative to Algolia”. Unlike a tool like lunr, which uses JavaScript for client-side searching, Typesense requires running a dedicated server for search, or using their hosted cloud SaaS (Search-as-a-Service).

So, I built a simple web using Typesense and the Changelog transcripts. You can see it here: https://joeriddles.github.io/changelog-transcript-search/.

Searching the Changelog transcripts for mentions of Fly.io

Searching the Changelog transcripts for mentions of Fly.io

You can run this all locally using the steps in the README. The UI is built with bog-standard React and Algolia’s open source UI library, React Instance with Typesense’s adapter. The UI library has drop-in components for searching, filtering, and paging.

The most interesting part of this simple project is a Python script to transform and upload the Markdown transcript files to the Typesense server. Even that code is straightforward, if ugly.