MCPSERV.CLUB
Sonarr

Sonarr

Self-Hosted

Automated TV show downloader and organizer

Active(100)
12.5kstars
4views
Updated 3 days ago
Sonarr screenshot 1
1 / 5

Overview

Discover what makes Sonarr powerful

Sonarr is a self‑hosted, *PVR* (Personal Video Recorder) designed for media enthusiasts who rely on Usenet or BitTorrent to acquire television content. At its core, Sonarr continuously polls RSS feeds for new episode releases, evaluates them against user‑defined quality profiles, and orchestrates the download, renaming, and organization of files. The application exposes a comprehensive REST API that allows developers to integrate episode tracking into custom dashboards, automate quality upgrades, or trigger downstream actions such as media server library updates.

Multi‑platform support

Quality management

Download integration

Metadata handling

Overview

Sonarr is a self‑hosted, PVR (Personal Video Recorder) designed for media enthusiasts who rely on Usenet or BitTorrent to acquire television content. At its core, Sonarr continuously polls RSS feeds for new episode releases, evaluates them against user‑defined quality profiles, and orchestrates the download, renaming, and organization of files. The application exposes a comprehensive REST API that allows developers to integrate episode tracking into custom dashboards, automate quality upgrades, or trigger downstream actions such as media server library updates.

Key Features

  • Multi‑platform support: Runs natively on Windows, Linux, macOS, and ARM‑based Raspberry Pi devices.
  • Quality management: Automatic upgrades from lower to higher quality releases (e.g., DVD → Blu‑ray) with configurable thresholds.
  • Download integration: Full support for SABnzbd, NZBGet, and other torrent clients via HTTP/WebSocket interfaces.
  • Metadata handling: Notifies Plex or Kodi to refresh libraries and pulls metadata from providers like TheTVDB, TVMaze, or Trakt.
  • Extensibility: Webhooks and plugin architecture allow developers to hook into episode lifecycle events or add custom search providers.

Technical Stack

Sonarr is built in C# (.NET Core / .NET 6+), leveraging the ASP.NET Core framework for its web API and UI. The UI is a single‑page application written with React (or a lightweight framework) that communicates over JSON REST. Data persistence uses SQLite for local installations and PostgreSQL or MySQL when deployed in production environments. Background processing relies on the Hangfire library for job scheduling, while real‑time updates are pushed via SignalR.

Architecture

[RSS Feed Poller] → [Episode Parser] → [Quality Evaluator]
            │                    │
      [Download Client API]  [Metadata Service]
            │                    │
        [File System] ← [Renamer] → [Library Notifier]
            │                    │
        [Database] ← [Web API] → [UI]
  • Feed Poller: A scheduled task that retrieves RSS feeds and normalizes episode data.
  • Quality Evaluator: Applies user profiles to determine whether a release meets criteria or warrants an upgrade.
  • Download Client API: Abstracts interactions with external downloaders, exposing a unified interface regardless of protocol.
  • Metadata Service: Aggregates show information from multiple APIs, caching results to reduce external calls.
  • Web API: REST endpoints expose all functionality; authentication is handled via JWT or cookie‑based sessions.
  • UI: Single‑page React app consuming the API, with optional WebSocket support for live updates.

Deployment & Infrastructure

Sonarr’s lightweight footprint makes it ideal for containerized environments. Official Docker images are available, and the application can be orchestrated with Kubernetes or Docker‑Compose. For high‑availability setups, multiple replicas can share a common database and file storage (e.g., NFS or cloud object stores). The application is stateless beyond its database, simplifying scaling and failover.

Integration & Extensibility

  • Webhooks: Trigger external scripts or services on events such as episode_added, download_started, or quality_upgrade.
  • Plugin System: Developers can create custom search providers or download clients by implementing predefined interfaces; plugins are loaded at runtime without recompilation.
  • API: Full CRUD operations for series, episodes, and profiles. Advanced queries allow filtering by status, quality, or release date.
  • CLI: A command‑line interface exists for scripting and automation tasks, useful in CI/CD pipelines or custom monitoring tools.

Developer Experience

Sonarr’s documentation is comprehensive, with a dedicated API reference and example payloads. The community contributes to an active GitHub repository, forums, Discord channel, and a public issue tracker focused on bugs and feature requests. Licensing is MIT, enabling free commercial use without attribution requirements. The project’s modular architecture and clear separation of concerns make it approachable for developers familiar with .NET or RESTful services.

Use Cases

  • Automated Media Servers: Deploy Sonarr alongside Plex or Emby to maintain a perfectly curated library with minimal manual intervention.
  • Custom Dashboards: Build a home‑automation panel that displays upcoming episodes, download progress, and quality upgrade status via the API.
  • Enterprise Content Management: Use Sonarr to ingest syndicated video feeds, automatically tag, and store them in a central repository for downstream processing.
  • Educational Platforms: Automate the collection of educational series or documentaries, ensuring consistent quality for classroom use.

Advantages

  • Performance: C#’s async I/O and efficient database access provide low latency even under heavy feed loads.
  • Flexibility: Extensive quality profile configuration and plugin support allow tailoring to niche workflows.
  • Licensing & Community: MIT license plus a vibrant open‑source community reduce barriers to adoption and foster rapid feature growth.
  • Cross‑Platform: Native binaries for all major OSes and ARM support make it suitable for a wide range of hardware, from NAS devices to Raspberry Pi clusters.

In summary, Sonarr offers developers a robust, extensible framework for automating television content acquisition and management. Its modern .NET stack, clean API surface, and strong community support make it a compelling choice for any self‑hosted media solution.

Open SourceReady to get started?

Join the community and start self-hosting Sonarr today

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
other
License
GPL-3.0
Stars
12.5k
Technical Specs
Pricing
Open Source
Database
SQLite
Supported OS
LinuxWindowsmacOS
Author
Sonarr
Sonarr
Last Updated
3 days ago