Documentation
Heron Broadcaster is self-hosted radio automation for Linux. It plays music around the clock to your Icecast servers, picks it with categories, clocks and a weekly schedule, and is run from a web interface.
Heron is in early development. It plays reliably, but settings and behaviour can still change between releases.
Start here
Section titled “Start here”InstallationRun Heron with Docker Compose and sign in.
First stepsAdd music, go on air, and shape the programme.
UpgradingChoose a version, pin it, and upgrade.
Guides
Section titled “Guides”LibraryYour music folder, analysis, new music and the trash.
RotationCategories, clocks, the schedule, separation and restrictions.
PlayoutCrossfades, loudness, the FX player and the fallback folder.
OutputsEncoder profiles and Icecast outputs.
Web interfaceThe pages, roles, themes and languages.
Reference
Section titled “Reference”ConfigurationEvery environment variable of the Compose stack.
APIAuthentication, tokens and the main routes.
MonitoringMetrics, the Grafana dashboard, alerts and Sentry.
How Heron is built
Section titled “How Heron is built”Heron is five services and a MariaDB database, run with Docker Compose:
| Service | Role |
|---|---|
heron-web |
The web interface; forwards /api to heron-api |
heron-api |
The HTTP and WebSocket API, the library scanner, the queue manager and rotation |
heron-librarian |
The incoming folder, the buffer zone, identification, tags, filing and the trash |
heron-analyzer |
Track analysis |
heron-engine |
Real-time playout, encoders and outputs |
The engine never depends on the others: when the API or the database is down, it keeps playing what it has queued, then its fallback folder.
The developer documentation (architecture, decisions, data model, milestones) lives in the repository.