PodPeopleDB is an open-source database for podcast hosts and guests, serving as the IMDB of podcasting. It automatically indexes podcast host information from podcast feeds and allows manual submissions of host/guest information.
- Podcast Host Database: Track hosts and guests across different podcasts
- Automatic Feed Parsing: Extracts host information from
<podcast:person>
tags in podcast feeds - Manual Submissions: Allow users to submit additional host/guest information
- Public API: Access podcast host data programmatically
- SQLite Database: Download the entire database for offline use
- Admin Dashboard: Moderate and approve host submissions
PodPeopleDB uses the Podcast Index Feed ID to look up podcasts and automatically extracts host information from podcast feeds that use the podcasting 2.0 <podcast:person>
tags. For podcasts without these tags, users can manually submit host information.
- Hosts: Names, roles, descriptions, images, and associated podcasts
- Podcasts: Title, description, author, owner, images, and feed URLs
- Automatic Updates: Keeps host information current based on feed data
GET /api/podcast/{id} - Get podcast information by Podcast Index ID
GET /api/hosts/{id} - Get hosts for a specific podcast
GET /api/recent-hosts - Get recently added hosts
GET /api/download-database - Download the entire SQLite database
- Clone the repository:
git clone https://github.com/yourusername/podpeople-db.git
- Build the Docker container:
docker build -t podpeople-db .
- Run the container:
docker run -p 8080:8080 podpeople-db
ADMIN_USERNAME
: Admin dashboard username (default: admin)ADMIN_PASSWORD
: Admin dashboard password (default: admin)SEARCH_API_URL
: URL for the Podcast Index API
- Access the web interface at
http://localhost:8080
- Enter a Podcast Index Feed ID to look up a podcast
- View host information or submit new host details
- Download the database for offline use
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
- Go (1.23+)
- SQLite
- Gorilla Mux for routing
- HTMX for dynamic content
- Docker for containerization
This project is open source and available under the GNU GENERAL PUBLIC LICENSE.
- Thanks to the Podcast Index for providing the podcast data API
- Built to support the Podcasting 2.0 initiative and namespace
- Inspired by the need for better podcast host discovery and tracking
Please make sure to change the default admin credentials in production by setting the appropriate environment variables.
V1:
- Add Episode specific entries