A few days ago, I shared a look at the self-hosted applications I use to manage my digital life, including an RSS reader for tracking YouTube creators. While that system worked, the interface lacked the specific functionality I needed to categorize content effectively. The standard YouTube subscription tab has become increasingly difficult to navigate due to the inclusion of Shorts and a lack of consistent organization. I wanted a way to group creators by topic—such as amateur radio, retro tech, or gaming—and have them appear in a streamlined, chronological feed. So I built my own browser!
See it here in my latest video!
I spent about an hour collaborating with the Claude Code to draft the code for a custom RSS reader. I am not positioning myself as a professional developer, but rather as someone using these tools to solve specific personal workflow issues. By providing initial instructions and refining the output through a series of prompts, I was able to build a functional application that organizes videos into specific buckets and subcategories.
The application utilizes YouTube’s RSS feeds rather than the platform’s API. This decision simplifies implementation, as every channel and even specific playlists have an associated RSS feed. This allows for more granular control; for example, if a creator produces various types of content, I can subscribe only to the playlist that interests me. To prevent hitting delivery limits from YouTube, the code includes a staggered refresh cycle. While the default is to check feeds every 60 minutes, the interval can be adjusted on a per-channel basis for news-heavy content that requires more frequent updates.
The current interface allows for easy management of the 129 channels I have imported so far. I included an OPML import feature, which makes it possible to migrate existing subscriptions from other readers. Within the app, I can move channels between categories, create new labels, and click directly through to YouTube to watch videos. Since I use a premium account, the absence of an integrated player to avoid ads is not an issue for my viewing experience.
One significant limitation of my previous setup was the difficulty of accessing these feeds on a television. I tasked the AI with helping me build a client for Apple TV that connects to the database server, which I plan to host in a Docker container on my local network.
This process involved learning the basics of Apple’s Xcode environment to side-load the Apple TV app. I was really pleased to see the Apple TV app could in turn call up the YouTube app and have the video start playing immediately.
The development of this project was funded in part by credits provided by the AI service, totaling approximately $20 in usage costs. My goal now is to move this code into the open-source community. I do not have the personal bandwidth to manage a software project or maintain the code long-term, so I am looking for interested parties to take over the project and post it to GitHub. If someone is willing to maintain it as an open-source tool, I believe it could serve as a useful alternative for those who find the current state of video subscription feeds unsatisfactory.
The server-side logic is designed to run in a container, which opens the door for other developers to create clients for Android or various web platforms. At the moment this serves as a personal tool that aligns my video consumption with the specific categories I prefer for browsing what I want to watch. I intend to continue refining the system for my own use while waiting to see if a broader community project develops around the initial codebase.
