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.
Everything you can do in the web interface is also available as a REST API. Per-device keys let the Android app and your own scripts sign in without sharing your password. Full docs at /api/docs.
Companion app
A native Android app for your CastCharm library, with Android Auto support.
Connect to your CastCharm server, browse your library, and stream or download episodes to your phone. Sign in once and the app stays connected — 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.