<span class='p-name'>Use GitHub Pages & Jekyll to host a podcast</span>

Use GitHub Pages & Jekyll to host a podcast

In much of my work, I strive to make my work accessible and approachable for others. This involves blogging about my work, and using these tools to inject a bit more transparency into the process as I work as an open scholar. This also includes podcasting when possible.

The podcast provides an audio piece of content that I can use to supplement a blog post, or class lecture. I also value audio podcasts because it allows me to make the content a bit more transportable. In this, I want to allow my audience the opportunity to consume the content as they see fit. This may include walking, exercising, or other activities away from the computer.

I have a series of posts detailing how I create podcasts and prepare them to share with my audience. I have a number of podcasts for a variety of purposes. This post will share guidance on how I use the Internet Archive, Jekyll, and GitHub Pages to serve up my podcast feed.

Why did we do this?

For this latest podcast, I wanted to provide an alternative to webinars to disseminate information from the Infusing Computing research project. We wanted a platform that was a bit more open, accessible, and approachable with people in and out of the project. We figured that webinars would only be reviewed by project participants..and have the potential to be ignored. A podcast series provides bite-sized (around 10 minute) segments that can be consumed by individuals during the everyday events of their lives.

After a bit of research, we realized that the platform we use to host the website (Weebly) is horrible for creating a podcast feed. WordPress would provide a much better option. This is partially due to a decision to host the audio files for the podcast on the Internet Archive. This allows the files to be hosted for free. This also allows us to Creative Commons license the audio files and make them available for others to review, remix, reuse. Lastly, it is important that the materials, tools, and process are all transparent to show others how this may be accomplished.

After realizing that Weebly would not work, and starting up a new WordPress instance would not be an option, we researched the Podcast Generator which worked for Doug Belshaw and Dai Barnes on the TIDE podcast. After some exploration, we could not get this running and looked for other opportunities to serve the podcast website, while not being solely “owned” by one person.

What did we use?

Podcasting relies on a pretty simple technology – RSS. RSS often gets generated for a website almost as a by-product of adding content, this allows people to “subscribe” to your website and be notified or fed updates.

After more research and exploration, we identified the potential to use Jekyll and GitHub Pages to create individual posts for each episode and power the RSS feed for subscriptions. This inspiration is all due to Tim Klapdor. This site was inspired by Tim’s use of the Jekyll Skeleton to create the LinkRot Podcast. We also liked the embedded HTML5 player (Plyr) in the post page for each podcast to allow people to sample and listen without having to subscribe or download anything. This was an element used in the LinkRot Podcast.

Jekyll is a static site generator that can be used to create simple blogs from plain text files. GitHub is a cloud Git repository hosting service that provides a handy web interface for managing, editing, and collaborating on Git repositories. By using Jekyll to create pages and share via GitHub, GitHub Pages allows us to share a website using free static web hosting from a GitHub repository. To learn about Jekyll, GitHub, and GitHub pages, this workshop from Evan Will was an invaluable resource. Screencast of the workshop is available here.

We used the repositories from the Jekyll Skeleton and LinkRot Podcast to create this website.

This project will most likely include a constant amount of fiddling and tweaks to keep it running, while making it look better online. Once again, one of the key goals is to show what can be done to create this alternative publishing and dissemination model in professional development experiences.

Our process

1. Record the conversation using Zoom

2. Edit and export audio from Zoom. Edit audio in Audacity or Soundtrap

3. Edit metadata

4. Upload file to the Internet Archive file – copy link to MP3

5. Create a new post in Markdown and add in the relevant front matter to the YAML section. The following guidance is from the LinkRot podcast

layout: post 
title: "Title Goes Here" 
date: Publishing date and time 
file: link to file in S3 
summary: "Quick exerpt of episode" 
description: "Longer information" 
duration: "how long in minutes and seconds" 
length: "in seconds" 
explicit: "do we swear" 
keywords: "keyword tags" 
block: "hold back publishing it" 
voices: "who did the talking"

6. Add links and show notes to the content section.

7. Once we’re complete Commit to GitHub

8. Site and RSS is updated and the new episode is pushed out

Make it yours

First, start up a podcast and record a couple of episodes.

Second, you have a lot of options for hosting the episodes (e.g., getting them online). I chose the Internet Archive to host our content.

Third, take a bit of time and play with Git, GitHub, GitHub Pages, and Jekyll. This workshop from Evan Will was an invaluable resource. Screencast of the workshop is available here.

Fourth, clone or download and remix our version of the Jekyll code and website from the repository on GitHub. Once again…this inspiration is all due to Tim Klapdor and his use of the Jekyll Skeleton to create the LinkRot Podcast.

Fifth, kick the tires on our site to see what we did to make everything work out. If you need help…please feel free to send an email to ask questions (hello@wiobyrne.com).

I hope this helps you as you get your content online. I’ll continue to tweak these posts about my podcasting habits.

Please also subscribe to my weekly newsletter if you like this sort of content.

Cover image credit

Leave A Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.