MCPSERV.CLUB
LibreTime

LibreTime

Self-Hosted

Self‑hosted radio station automation

Active(85)
885stars
0views
Updated 20 days ago
LibreTime screenshot

Overview

Discover what makes LibreTime powerful

LibreTime is a full‑stack, self‑hosted media streaming platform that empowers developers to build and operate online or terrestrial radio stations. At its core, it orchestrates media ingestion, scheduling, and real‑time playout while exposing a RESTful API for programmatic control. The system is built to run in containerized environments, making it suitable for cloud deployments or on‑premises servers. Its modular architecture separates the front‑end user interface from a robust back‑end service layer, allowing developers to extend or replace components without disrupting the overall workflow.

Automated Scheduling

Multi‑platform Output

Library Management

Webhooks & Events

Overview

LibreTime is a full‑stack, self‑hosted media streaming platform that empowers developers to build and operate online or terrestrial radio stations. At its core, it orchestrates media ingestion, scheduling, and real‑time playout while exposing a RESTful API for programmatic control. The system is built to run in containerized environments, making it suitable for cloud deployments or on‑premises servers. Its modular architecture separates the front‑end user interface from a robust back‑end service layer, allowing developers to extend or replace components without disrupting the overall workflow.

Key Features

  • Automated Scheduling – A rule‑based scheduler handles shows, programs, and ad sweeps, producing a real‑time play queue that can be queried via API.
  • Multi‑platform Output – Supports AM/FM, IP broadcast (Icecast/Ogg), and WebSocket streaming to web clients.
  • Library Management – Import music, podcasts, and program files with metadata extraction; the library can be queried or updated through API endpoints.
  • Webhooks & Events – Exposes hooks for external services to react to schedule changes, play events, or media uploads.
  • User & Role Management – Built‑in authentication with fine‑grained permissions, ideal for collaborative station workflows.

Technical Stack

  • Back‑end – Python 3.10+, Django REST Framework, Celery for background jobs, and PostgreSQL as the primary database.
  • Front‑end – Vue.js 3 with Vuetify for a responsive admin interface; communicates exclusively over the REST API.
  • Media Server – Uses ffmpeg for transcoding and nginx‑rtmp or Icecast for streaming; the playout engine is a lightweight Go service that reads the play queue and pushes to the chosen output.
  • Containerization – Docker Compose files are provided for local development, while Helm charts enable Kubernetes deployments.
  • Testing – Argos Visual Testing integration ensures UI regression detection; unit tests are written in pytest for the back‑end.

Deployment & Infrastructure

LibreTime can be deployed on any Linux host with Docker support. The recommended stack is a PostgreSQL instance, Redis for Celery broker and cache, and the media server container. Horizontal scaling is straightforward: the API layer can be load‑balanced across multiple Django workers, while Celery beat and worker processes are stateless. For high‑availability streaming, multiple playout nodes can be configured to fail over automatically.

Integration & Extensibility

The API follows standard REST conventions, making it easy to integrate with external CMSs, analytics dashboards, or custom scheduling tools. Developers can create plugins by extending the Django app registry; the system exposes signals for events like track_started or schedule_updated. Webhooks allow external services to subscribe to real‑time updates, enabling use cases such as live chat integration or dynamic ad insertion.

Developer Experience

Documentation is comprehensive, covering architecture diagrams, API reference, and deployment guides. The community forum on Discourse and Matrix channels provide active support, while the open‑source license (AGPLv3) encourages contribution. The codebase follows PEP8 and Vue best practices, with linters and CI pipelines that enforce quality. Continuous integration tests run against multiple Python versions to ensure compatibility.

Use Cases

  • Community Radio Stations – Quick setup for local stations that need a reliable scheduler and web presence.
  • Educational Broadcasting – Schools can automate lecture recordings, podcasts, and live streams with minimal overhead.
  • Event Live Streaming – Conferences or festivals can use LibreTime to manage multiple streams, schedule segments, and integrate with ticketing APIs.
  • Podcast Networks – Centralized library management and scheduled distribution to multiple platforms via the API.

Advantages

LibreTime offers a blend of flexibility, performance, and licensing freedom that sets it apart from proprietary solutions. Its Python/Django core provides a familiar environment for backend developers, while the Vue front‑end delivers a polished admin experience. Containerization and Helm charts enable rapid scaling, and the AGPLv3 license ensures that improvements remain community‑owned. Developers who need a customizable, open‑source radio platform will find LibreTime’s modular design and robust API the ideal foundation.

Open SourceReady to get started?

Join the community and start self-hosting LibreTime today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
AGPL-3.0
Stars
885
Technical Specs
Pricing
Open Source
Database
PostgreSQL
Supported OS
LinuxDocker
Author
libretime
libretime
Last Updated
20 days ago