Self-hosted podcast manager
Subscribe to RSS feeds, download episodes automatically, track your listening, and manage your entire library — all from a single Docker container running on your own server.
Features
A straightforward overview of what the app includes.
Subscribe by RSS URL, Apple Podcasts link, or local XML file. Change the source URL at any time without losing your download history or episode records.
New episodes can be downloaded automatically when a feed syncs. Configure auto-download globally or per feed, with optional time-window restrictions.
Downloads are saved with configurable filenames — date prefix, sequential episode number, and optional year subfolders. Settings can be overridden per feed.
Bring in an existing podcast library from disk. CastCharm reads ID3 tags and matches audio files to their RSS entries, then renames them to match the configured format.
Stream any downloaded episode from the browser. Playback position is remembered across sessions, and episodes are marked played automatically based on a configurable threshold.
Write RSS metadata — title, author, description, artwork — to audio files. Field mappings are configurable per feed, with per-episode overrides.
Generates a private RSS feed for each podcast pointing at your local files. Use it with any podcast app to listen from another device on your network.
Library-wide and per-feed statistics with charts — total downloads, storage used, listening rate, and more. Full-text search across all episode titles and descriptions.
Every action available in the UI is also available via a documented REST API. Swagger UI is built in at /api/docs. Optionally enable password protection.
Coming soon
A native Android app for your CastCharm library is in development.
A native Android app that connects to your self-hosted CastCharm instance. Browse your library, stream or download episodes, and track playback — all from your phone, with no third-party service in the middle.
Learn moreQuick start
CastCharm ships as a single Docker container. No build step, no external database.
# 1. Download the compose file curl -O https://raw.githubusercontent.com/CastCharm/castcharm/main/docker-compose.yml # 2. Start docker compose up -d # 3. Open the app open http://localhost:8000
The setup wizard will guide you through initial configuration on first run. See the Installation Guide for volume paths, port changes, and reverse proxy configuration.