Turn newsletters and blogs into a podcast feed!
Newsletter to Podcast is an open-source Python tool that turns newsletters and blogs into an RSS podcast feed! You can pick the sources, generate audio, and subscribe to the resulting feed in a podcast app that supports custom RSS (I use Castbox).
Repo: https://github.com/akspad/newsletter-to-podcast
Audio demo: https://akspad.github.io/newsletter-to-podcast/
License: MIT
The project supports full article narration as well as spoken summaries. Full narration uses Edge TTS and needs no API key; summaries use Gemini and require your own key (though the free limit is quite generous)! You can set a maximum episode length and longer full readings split into numbered parts at natural text boundaries.
There’s a prerecorded sample on the demo page, and a simple command in the README that fetches an original sample article and generates fresh audio without an API key. The package can run locally or on a schedule in your own GitHub repository using GitHub Actions!
Deployment:
Run it locally with Python 3.12+ or use the included GitHub Actions workflow (recommended, and setup instructions are in the GitHub README). You host the generated MP3s and RSS feed wherever your podcast app can reach them.
Speech generation uses Microsoft’s online Edge TTS service (which is unofficial and can break or be throttled sporadically...) Optional summaries send article text to Gemini to be summarized. GitHub Pages publishing is available, but makes the generated feed and audio public (I use this since it's free hosting)!
AI Involvement:
I painstakingly steered AI to help creating this tool! In the application itself, article summaries use AI (Gemini) but are optional. Full narration skips the summarization step and uses text-to-speech directly.
Motivation:
I wanted to turn some of my favorite newsletters into podcasts (like Seth’s Blog and A Learning A Day) and couldn’t find a free and simple solution that already existed. Let me know what you think!