PullaPod Demo

PullaPod

Pull it, play it, preserve it.

Discover, track, and download podcast episodes with proper naming and artwork embedding

Install Now!

What is PullaPod?

PullaPod is a command line utility (CLI) that helps you discover, track, and download podcast episodes.

Search for podcasts, save your favorites, check for new episodes, and download with proper naming and artwork.

Features

Podcast Discovery

Search for podcasts using the Podcast Index API. Find feeds by keyword, title, or author with language filtering.

Episode Preview

Preview episode details before downloading. View titles, dates, durations, and descriptions to choose exactly what you want.

Favorites & Recent

Save your favorite podcasts and check for new episodes across all of them with a single command.

Flexible Filtering

Download episodes by specific date, date range, or name matching. Get exactly the episodes you need.

Artwork & Metadata

Automatically downloads episode artwork and embeds it into MP3 files with proper metadata.

Clean Organization

Creates podcast-specific folders with sanitized filenames. No more GUIDs in your file names!

Installation

Install PullaPod globally via npm to use it anywhere on your system.

Install from NPM

npm install -g pullapod-cli

Configure API Credentials (Optional)

To use search and discovery features, get free API keys from api.podcastindex.org

export PODCAST_INDEX_API_KEY="your-api-key"
export PODCAST_INDEX_API_SECRET="your-api-secret"

Requirements: Node.js 18.0.0 or higher

Usage

Available Commands

Command Description
search <query> Search for podcasts by keyword, title, or author
info <feed> View detailed information about a podcast
episodes <feed> Preview episode details before downloading
favorite <subcommand> Manage saved favorite podcasts
recent Check for new episodes from saved favorites
--feed <url> Download episodes from a feed

Complete Workflow

1. Search for a podcast

pullapod search "javascript podcast" --max 5

2. Get detailed info about the podcast

pullapod info https://feeds.fireside.fm/javascriptjabber/rss

3. Save it to your favorites

pullapod favorite add https://feeds.fireside.fm/javascriptjabber/rss

4. Check recent episodes across all favorites

pullapod recent

5. Preview episodes from a specific feed

pullapod episodes https://feeds.fireside.fm/javascriptjabber/rss --max 10

6. Download a specific episode

pullapod --feed https://feeds.fireside.fm/javascriptjabber/rss --date 2024-01-15

File Organization

Downloads are automatically organized into podcast-specific folders:

~/Podcasts/
  My Favorite Podcast/
    Episode 42 - The Answer.mp3
    Episode 42 - The Answer.jpg

Frequently Asked Questions

Why would someone need this? What problem does it solve?

Like all web content, your favorite podcast could vaporize tomorrow for a variety of reasons ranging from mistakes, to apathy, cost, or censorship. Pullapod lets you download podcast episodes and store them somewhere that you control.

Where can I report a bug or request a feature?

Via GitHub issues https://github.com/lwndev/pullapod-cli/issues

I want to use PullaPod, but I don't know where to find RSS Feed URLs

Use the built-in search command: pullapod search "podcast name". You can also browse podcastindex.org directly.

Can Pullapod download podcasts from YouTube, or Spotify?

PullaPod only works on non-authenticated RSS feeds.

Can I use PullaPod to access password-protected podcasts?

No. Unauthenticated only.

Can I control the quality of the podcasts that are downloaded?

No. PullaPod downloads at the default file format and bitrate indicated in the RSS feed.

Is there a GUI?

No. Desktop soon. Mobile someday. Maybe...

Does pullapod work with video podcasts?

No. Wait, maybe. Either way, not intentionally.