taylor.town about spam rss

I built a crappy video podcast player

tl;dr: Try out telecast.company; share your complaints/gripes on GitHub.

2005 birthed the iPod Video and YouTube.

20 years later… it's 2025. Compare YouTube against the podcast (iPod broadcast) ecosystem. YouTube pisses off its creators, fuels a clickbait thumbnail arms-race, and fosters addiction (protip: disable recommendations). Podcasters thrive in an ecosystem of interviews, educational content, and long-form journalism.

Okay, this is a bit unfair. Trash podcasts exist. Quality YouTube channels exist (and are strafing over to Nebula). Incentives tend to produce different median media on their platforms; YouTube's centralized advertising model seems to encourage unsustainable behavior from its advertisers, its creators, and its consumers.

Yes, video podcasts have been a thing since 2005, but YouTube dominated online video by simplifying hosting/delivery/discovery. Twenty years later, creating/consuming video podcasts remains an awful experience.

"vidcast" and "vodcast" are clunky portmanteaus, so I'm co-opting the term "telecast" (television broadcast) for video podcasts.

Proof-of-Concept

And so I built a very crappy video podcast player.

Some initial features/findings:

Throw One Away

That prototype was too crappy. I tossed it in the proverbial garbage.

"Throw One Away" is my favorite way of acclimating to a new problem domain.

Here's what it looks like now:

It's designed to be local-first software; nearly everything lives in the frontend. The only server endpoints are (1) a public search API and (2) a CORS/cache proxy for RSS feeds and video thumbnails.

I used duckdb and some nasty sql to load the search database with ~100K feeds from PodcastIndex.org.

curl -O https://public.podcastindex.org/podcastindex_feeds.db.tgz
tar -xzf podcastindex_feeds.db.tgz -C /tmp/
sed "s|\$DATABASE_URL|$DATABASE_URL|" import_feeds.sql | duckdb

Thanks to PodcastIndex.org for helping make the internet open, free, and accessible!

Beyond video podcasts, I also added a bunch of my favorite RSS feeds from YouTube, plus channels from Kagi's smallyt.txt list.

The code is on Github. It's crappy, but it's mine -- I'm tired of smelling other people's crap.

Try it out at telecast.company