In a world where content consumption is king, podcasts have become a staple for on-the-go learning, entertainment, and inspiration. But what if your favorite creators are primarily on YouTube? Enter PigeonPod, an open-source tool that seamlessly converts YouTube channels and playlists into ad-free, podcast-ready audio feeds. Whether you’re commuting, working out, or just multitasking, PigeonPod lets you listen to YouTube content anywhere—without the video distractions.
Developed by aizhimou and hosted on GitHub, PigeonPod is designed for simplicity and elegance. It’s perfect for self-hosters who want control over their media, and it’s packed with smart features that make the process feel almost magical. In this post, we’ll dive into what makes PigeonPod special, its key features, how to deploy it, and more. If you’re a podcast enthusiast or a YouTube binge-watcher, this could be your new favorite tool.
Why PigeonPod? The Problem It Solves
YouTube is a treasure trove of audio-rich content—think interviews, lectures, tutorials, and storytelling channels. However, watching videos isn’t always practical. Traditional solutions involve manual downloads or clunky converters, often riddled with ads or poor quality. PigeonPod changes that by automating the transformation into a clean, RSS-compatible podcast format.
It’s not just a converter; it’s a full-fledged management system. You can subscribe to channels, filter episodes, and even handle premium or age-restricted content. Plus, with multi-language support and a responsive UI, it’s accessible to users worldwide. As the tagline says: “Listen to YouTube. Anywhere.”
Core Features That Shine
PigeonPod stands out with its thoughtful design and powerful capabilities. Here’s a breakdown of its standout features:
- Smart Subscription: Add YouTube channels or playlists with a single click. It syncs automatically, keeping your feeds fresh without manual intervention.
- Auto Sync and Incremental Updates: No more outdated content. PigeonPod checks for new videos periodically and downloads only what’s new, saving time and bandwidth.
- RSS Podcast Integration: Generate standard RSS links that work with any podcast app—like Apple Podcasts, Spotify, or Pocket Casts. It’s as simple as copying a link.
- Advanced Filtering: Customize your feeds by including or excluding keywords, or filtering by episode length. Say goodbye to irrelevant or overly long episodes.
- Episode Management: Easily view, delete, or retry failed downloads. It’s all in one intuitive dashboard.
- Audio Quality Customization: Choose from 0–10 quality levels or stick with the original audio. This lets you balance file size and sound fidelity based on your needs.
- Ad-Free Experience: Automatically strips out intros and mid-roll ads, delivering a seamless listening session.
- Custom Cookies for Restricted Content: Upload your YouTube cookies to access age-restricted or membership-exclusive videos—ethically, of course.
- Multi-Language and Responsive Design: Supports English, Chinese, Spanish, Portuguese, Japanese, French, German, and Korean. The UI adapts beautifully to desktops, tablets, and mobiles.
These features make PigeonPod more than a tool—it’s a polished product that prioritizes user experience.
Screenshots: A Glimpse of the Interface
PigeonPod’s interface is clean and modern, with dark and light modes for comfort. The homepage shows your channel list at a glance, while channel details provide episode overviews, sync status, and customization options. It’s responsive, ensuring a smooth experience whether you’re on your phone during a run or at your desk.
(Imagine sleek screenshots here: A dashboard with channel thumbnails, an episode list with play buttons, and settings panels for filters and quality.)
Easy Deployment: Get Started in Minutes
One of PigeonPod’s biggest strengths is its straightforward setup. Whether you’re tech-savvy or a beginner, you have options.
Option 1: Docker Compose (Recommended for Most Users)
If you have Docker installed, this is the easiest way:
- Create a
docker-compose.yml
file with the provided template. Customize environment variables likePIGEON_BASE_URL
(your domain),PIGEON_AUDIO_FILE_PATH
(audio storage), andSPRING_DATASOURCE_URL
(database path). Example snippet:version: '3.9' services: pigeon-pod: image: 'ghcr.io/aizhimou/pigeon-pod:release-1.11.0' restart: unless-stopped ports: - '8834:8080' environment: - 'PIGEON_BASE_URL=https://your-domain.com' - 'PIGEON_AUDIO_FILE_PATH=/data/audio/' - 'SPRING_DATASOURCE_URL=jdbc:sqlite:/data/pigeon-pod.db' volumes: - data:/data volumes: data:
- Run
docker-compose up -d
to start the service. - Access it at
http://localhost:8834
(or your custom port). Default login: usernameroot
, passwordRoot@123
.
Option 2: Run with JAR (For Java Users)
If Docker isn’t your thing:
- Download the latest JAR from the GitHub Releases page.
- Create a
data
directory for storage. - Run the JAR with custom properties:
java -jar -DPIGEON_BASE_URL=http://localhost:8080 \ -DPIGEON_AUDIO_FILE_PATH=/path/to/audio/ \ -Dspring.datasource.url=jdbc:sqlite:/path/to/pigeon-pod.db \ pigeon-pod-x.x.x.jar
- Visit
http://localhost:8080
and log in with the defaults.
Pro Tip: For upcoming hosted versions, check out PigeonPod’s online services—no self-hosting required!
Under the Hood: Tech Stack
PigeonPod is built with modern, reliable technologies for performance and maintainability.
Backend
- Java 17 and Spring Boot 3.5: The foundation for robust server-side logic.
- MyBatis-Plus 3.5: Handles database interactions efficiently.
- Sa-Token: Secure authentication.
- SQLite: Lightweight, file-based database for easy setup.
- Flyway: Manages database migrations.
- YouTube Data API v3 and yt-dlp: For fetching and downloading content.
- Rome: Generates RSS feeds.
Frontend
- JavaScript (ES2024) and React 19: Dynamic, interactive UI.
- Vite 7: Fast build tool.
- Mantine 8: Beautiful, customizable components.
- i18next: For seamless multi-language support.
- Axios: Reliable API calls.
This stack ensures PigeonPod is scalable, secure, and developer-friendly.
For Developers: Contributing to PigeonPod
Want to hack on it? The development guide is straightforward:
- Clone the repo:
git clone https://github.com/aizhimou/pigeon-pod.git
. - Set up directories:
mkdir -p data/audio
. - Get a YouTube API key from Google Cloud Console.
- Start the backend:
cd backend && mvn spring-boot:run
. - Start the frontend:
cd frontend && npm install && npm run dev
.
The project structure is clean, with separated backend and frontend folders, plus data storage for audio and the database.
Notes: Ensure yt-dlp is installed, configure your API key, and monitor disk space for audio files.
Wrapping Up: Give It a Star!
PigeonPod is a game-changer for anyone who loves YouTube but prefers audio. It’s free, open-source, and built with love for podcast fans. If self-hosting sounds appealing, head over to the GitHub repo to get started. And if you like what you see, drop a star—it helps the project grow!
Comments