Repolode
madeofpendletonwool

madeofpendletonwool/PinePods

Self-hosted podcast manager and player written in Rust, with web, desktop, mobile and CLI clients sharing one server.

Open-source alternative to:Pocket CastsOvercast

Stars
1,048
Forks
80
Open issues
116
Last commit
3 days ago

What is it?

PinePods is a self-hosted podcast management system. You run one server with PostgreSQL or MySQL/MariaDB, and every household member signs in to their own account. Subscriptions, listening history, queues, downloads and settings are stored in your database, so they stay in sync across devices.

The project offers audio and video podcast playback, variable speed, chapters, transcripts, per-podcast auto-download, smart and manual playlists, and favorites. Search covers Podcast Index, iTunes and YouTube, plus your own library. A built-in gpodder-compatible sync server lets apps such as AntennaPod keep working alongside it. OIDC/SSO and TOTP-based MFA are supported.

Clients include a web interface served by the server, native Linux, Windows and macOS apps, iOS and Android apps with CarPlay and Android Auto support, and the Firewood terminal client. A Helm chart is provided for Kubernetes, and ARM devices such as 64-bit Raspberry Pis are supported.

Key features

  • 01Plays audio and video podcasts with variable speed, chapters and transcripts.
  • 02Stores subscriptions, history and queues per user on your own database.
  • 03Searches Podcast Index, iTunes and YouTube, as well as your own library.
  • 04Includes a gpodder-compatible sync server for existing podcast apps.
  • 05Supports OIDC/SSO sign-in and TOTP-based MFA.
  • 06Provides web, desktop, mobile and terminal clients.

Use cases

  • Running a shared podcast server for a family, with separate libraries for each member.
  • Keeping your listening data on your own hardware instead of a commercial service.
  • Listening to podcasts in the car via CarPlay or Android Auto from a self-hosted server.
  • Hosting it on a Raspberry Pi or Kubernetes cluster at home.

Quick start

  1. 1

    Create a docker-compose.yml with PostgreSQL, Valkey and PinePods services

  2. 2

    Start the services in the background

    sudo docker compose up -d
  3. 3

    Open http://localhost:8040 and create the first admin account

Things to know

  • The server needs PostgreSQL or MySQL/MariaDB plus a Valkey or Redis server, so setup involves several services.
  • Early setup is more involved than a single app, and some Postgres 17 to 18 upgrades require a manual, one-way migration.

In collections

Topics

FAQ

What is PinePods?
Self-hosted podcast manager and player written in Rust, with web, desktop, mobile and CLI clients sharing one server. PinePods is a self-hosted podcast management system. You run one server with PostgreSQL or MySQL/MariaDB, and every household member signs in to their own account. Subscriptions, listening history, queues, downloads and settings are stored in your database, so they stay in sync across devices.
Is PinePods free to use? What license does it have?
PinePods is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is PinePods still maintained?
Actively maintained. The last commit to PinePods was on Nov 4, 2026.
What can I use PinePods for?
Running a shared podcast server for a family, with separate libraries for each member. Keeping your listening data on your own hardware instead of a commercial service. Listening to podcasts in the car via CarPlay or Android Auto from a self-hosted server. Hosting it on a Raspberry Pi or Kubernetes cluster at home.
How do I install PinePods?
Create a docker-compose.yml with PostgreSQL, Valkey and PinePods services Start the services in the background: sudo docker compose up -d Open http://localhost:8040 and create the first admin account
Where can I get PinePods?
The source code and installation instructions are on GitHub: https://github.com/madeofpendletonwool/PinePods

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects