blog

rssrssrssrss (that is not a typo)

Sometimes, the only correct response to a feature request is to build an entirely different thing.

rssrssrssrss (that is not a typo)

One of the more common requests we get for our RSS to email feature is the ability to add multiple RSS feeds, so that you can send a monthly or weekly digest to subscribers containing items from not one but two (or three, or four) feeds. This is a totally reasonable and rational request, but has a lot of hidden product and architectural complexity under the surface:

  1. We automatically pause a feed if we have trouble reading from one of the URLs. What should the behavior be if we have two URLs? Should we pause the entire feed? Should we just pause that one feed?
  2. We detect duplicates based on the GUID or URL of a feed item. What should the behavior be if we have two feeds? Should we deduplicate across all feeds? Should we deduplicate within each feed?
  3. How do you traverse items in a custom template for just one feed out of three? How do you build that templating code in a way that also gracefully handles the normal case of a single feed?

Many of these complexities are endemic to Buttondown itself, and/but there's nothing stopping us from pushing some of that complexity aside and handling the interleaving in a completely separate purpose tool — which is exactly what we've done. Say hello to your newest favorite domain name, rssrssrssrss.com (also available on GitHub!)

Because this is a separate purpose-built tool, we get to avoid a lot of the complexity that comes from trying to tightly integrate all of these options into ButtonDown's backend and design system. Plus, it's open source, so if you really want to tweak the logic, you can fork or add a pull request. This is one of the many, many virtues of building on top of open protocols like RSS and, yes, SMTP. We're able to contribute tooling that helps us with our use cases, but also the wide, wide expanse of various other RSS production/consumption use cases.

Anyhoo, if you're looking to do this, now you can. And if you're not, well, here you go anyway.

Published on

June 9, 2025

Filed under

Written by

Justin Duke

Justin Duke is a software engineer, lover of words, and the creator of Buttondown.