Webapp that transforms a Twitch channel into a podcast feed to be used inside a podcast client
based on twitchRSS
converts a twitch channel in a full-blown podcast
this is a passion project, and mostly made for myself, but if you want to gift me a pizza margherita feel free!
when you host this just add /vod/channelName to your server path and an RSS will be generated
example: myserver.com/vod/channelname
just add the link to your podcast client
to enable transcoding just add ?transcode=true
to your url
example: myserver.com/vod/channelname?transcode=True
unfinished streams are not included, but if you want them to just add ?include_streaming=True
to the feed URL
example: myserver.com/vod/channelname?include_streaming=True
if you use a feed reader you can order the feed by any field suppored by twitch, the list of fields to sort by can be found here in the response field section
by default it sorts by the published_at field
to enable sorting just add sort_by=[key]
or/and desc=True
to the URL
some examples:
to sort by views:
myserver.com/vod/channelname?sort_by=view_count
to sort by views descending:
myserver.com/vod/channelname?sort_by=view_count&desc=true
if you only listen to the episodes in the twitch app or website you can enable the links_only=true
to skip the fetching of the audio stream, doing so will make the feed generation almost instant, so it's highly raccomanded to enable the option if you don't use the included audio feed
example: myserver.com/vod/channelname?links_only=True
to mix options just add &
beetween them
example: myserver.com/vod/channelname?sort_by=view_count&desc=true&links_only=true&include_streaming=True
before doing anything be sure to get your SECRET and CLIENT ID from twitch https://dev.twitch.tv/console
precompiled images are here for linux machines with arm64, amd64, arm/v7, i386 architectures
images for raspberry pis are included
git clone https://github.com/madiele/TwitchToPodcastRSS.git
cd TwitchToPodcastRSS
edit docker-compose.yml
with your PORT, SECRET and CLIENT_ID
(in the file you will find also optional parameters like sub_folder for use with reverse proxies, define a unique server name, and so on)
nano docker-compose.yml
save and
sudo docker-compose up -d
run this inside the folder with docker-compose.yml
sudo docker-compose pull && sudo docker-compose up -d
then run this to delete the old version form your system (note: this will also delete any other unused image you have)
sudo docker system prune
docker pull madiele/twitch_to_podcast_rss:latest
edit with PORT,SECRET and CLIENT_ID
sudo docker run -d --restart always -p <PORT>:80 -e TWITCH_SECRET="<YOUR_SECRET>" -e TWITCH_CLIENT_ID="<YOUR_CLIENT_ID>" madiele/twitch_to_podcast_rss:latest
to update kill and delete the running container and run the same commands
git clone https://github.com/madiele/TwitchToPodcastRSS.git
cd TwitchToPodcastRSS
docker build -t TwitchToPodcastRSS .
edit with PORT,SECRET and CLIENT_ID
sudo docker run -d --restart always -p <PORT>:80 -e TWITCH_SECRET="<YOUR_SECRET>" -e TWITCH_CLIENT_ID="<YOUR_CLIENT_ID>" TwitchToPodcastRSS
since this is a flask app most methods of deployment listed here should work too
the original twitchRSS has been developed by László Zeke. Later modified into TwitchToPodcastRSS by Mattia Di Eleuterio