4
0 Comments

Show IH: How I built a daily podcast from my favorite subreddit?

For some time now, I really wanted to listen to the r/SaaS subreddit posts while doing chores like cooking or doing the dishes.

I finally got around to build an audio version of r/SaaS top daily posts and launched it on Apple podcasts and Spotify.

In this post I breakdown the different tools I used to create the podcast show:
PRAW to fetch the Reddit posts with Python
Google Text-to-Speech to convert Reddit posts to audio
Transistor to host and publish the podcast
Render to run my Python code once a day
Canva to create the artwork for the podcast

PRAW: The Python Reddit API Wrapper

PRAW makes it super easy to access Reddit's data. The Subreddit model provides access to all the subreddit's posts. The Submission model contains the post details and a list of comments which are represented by the Comment model.

The Reddit data models provided by PRAW

Google Text-to-Speech

Google has fantastic text-to-speech technology. You have probably experienced it already on Google Assistant or Google Translate.

It is easily available via their cloud API. In 2016, they have added Wavenet voices, which sound more natural.

When reading out the the post comments, I thought it would be cool to rotate between different voices.

So I picked 4 Wavenet voices that I liked. When reading out the comments I randomly rotated between these 4 voices.

The Google Text-to-Speech Wavenet voices

Transistor: Podcast publishing platform

I wanted the creation of the podcast to be 100% automated, so I looked for a Podcast hosting platform that has an API.

Transistor has an awesome API with really good documentation. For example, creating a new episode from an audio file, is just one call.

Create Episode API on Transistor.fm

Another huge benefit of using them is that they help you distribute the podcast to all the major podcast players such as Spotify or Apple podcasts with just a couple of clicks.

Transistor's easy distribution to all major podcasts players

Because I am not earning anything from this podcast, I initially hesitated to spend 20$ per month to use Transistor. Now that I have tried it, it was well worth my time.

Render: Cloud hosting

In the past, I have always used AWS for hosting my code in the cloud. AWS is an amazing platform with lots of options, but it is also a little time consuming to setup.

After a little research, I ended up using Render. It tooks me 5 mins to setup a cron job on Render to run my python code periodically.

Setting up a new cron job on Render
The cool thing about Render is that it fetches any changes to my Github repository, and updates the cron job automatically.

Bonus: Using Canva to create the podcast artwork

To publish the podcast and submit it to major podcast players such as Spotify or Apple podcasts, I had to create a cover image for the podcast.

I used Canva quite a bit in the past, mainly to create blog post cover images. When I searched for "Podcast" templates on Canva, I liked the first result, so went for it without thinking too much.

Canva

After a little bit of editing, my podcast cover image was ready and I could publish using Transistor.

I have also created a short video explaining how I built it:
Youtube video

It was a really fun side project, let me know if you have any questions or feedback!

posted to Icon for group Show IH
Show IH
on February 2, 2022
Trending on Indie Hackers
I built an AI that turns an idea into a live business in under 10 minutes. Here’s what 1,000 launches taught me User Avatar 89 comments Building a startup costs $0. Your tooling budget costs $500K. Here's why. User Avatar 44 comments Building Noodle, a keyboard-first REST client for the terminal User Avatar 34 comments Stop losing deals in the gap between "sounds good" and getting paid User Avatar 33 comments "Looks Good to Me" Is Quietly Killing Your Feedback Loop User Avatar 33 comments 787 tools for developers. 5 for nurses. Two weeks of tracking 14,000 indie launches. User Avatar 29 comments