2026-01-21 03:51:13 +10:30
2025-10-18 00:39:02 +10:30
2025-10-18 00:39:02 +10:30
2026-01-19 21:56:39 +10:30
2026-01-19 09:54:41 +10:30
2026-01-19 09:54:41 +10:30


Profilarr


GitHub release Docker Pulls License Website Discord Buy Me A Coffee GitHub Sponsors

Manage quality profiles, custom formats, and release profiles across your Radarr and Sonarr instances. Define your profiles once with a Git-backed configuration database, then sync them to any number of *arr instances.

Warning

V2 is under heavy development and is NOT ready for production use. Use Profilarr V1 until V2 is ready.

Features

Core

  • Link - Connect to configuration databases like the Dictionarry database or any Profilarr Compliant Database (PCD)
  • Bridge - Add your Radarr and Sonarr instances by URL and API key
  • Sync - Push configurations to your instances. Profilarr compiles everything to the right format automatically

For Users

  • Ready-to-Use Configurations - Stop spending hours piecing together settings from forum posts. Get complete, tested quality profiles, custom formats, and media settings designed around specific goals
  • Stay Updated - Make local tweaks that persist across upstream updates. View changelogs, diffs, and revert changes when needed. Merge conflicts are handled transparently
  • Automated Upgrades - The arrs don't search for the best release, they grab the first RSS item that qualifies. Profilarr triggers intelligent searches based on filters and selectors

For Developers

  • Unified Architecture - One configuration language that compiles to Radarr/Sonarr-specific formats on sync. No more maintaining separate configs for each app
  • Reusable Components - Regular expressions are separate entities shared across custom formats. Change once, update everywhere
  • OSQL - Configurations stored as append-only SQL operations. Readable, auditable, diffable. Git-native version control with complete history
  • Testing - Validate regex patterns, custom format conditions, and quality profile behavior before syncing

Documentation

See dictionarry.dev for complete installation, usage, and API documenation.

Getting Started

Production

services:
  profilarr:
    image: ghcr.io/dictionarry-hub/profilarr:latest
    container_name: profilarr
    ports:
      - "6868:6868"
    volumes:
      - ./config:/config
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - PARSER_HOST=parser
      - PARSER_PORT=5000
    depends_on:
      parser:
        condition: service_healthy

  # Optional - only needed for CF/QP testing
  parser:
    image: ghcr.io/dictionarry-hub/profilarr-parser:latest
    container_name: profilarr-parser
    expose:
      - "5000"

Note

The parser service is only required for custom format and quality profile testing. Linking, syncing, and all other features work without it. Remove the parser service and related environment variables if you don't need it.

Development

Prerequisites

git clone https://github.com/Dictionarry-Hub/profilarr.git
cd profilarr
deno task dev

This runs the parser service and Vite dev server concurrently. See CONTRIBUTING.md for architecture documentation.

Environment Variables

Variable Default Description
PUID 1000 User ID for file permissions
PGID 1000 Group ID for file permissions
UMASK 022 File creation mask
TZ Etc/UTC Timezone for scheduling
PORT 6868 Web UI port
HOST 0.0.0.0 Bind address
APP_BASE_PATH /config Base path for data, logs, backups
PARSER_HOST localhost Parser service host
PARSER_PORT 5000 Parser service port

License

AGPL-3.0

Profilarr is free and open source. You do not need to pay anyone to use it. If someone is charging you for access to Profilarr, they are violating the spirit of this project.

Description
Configuration Management Platform for Radarr/Sonarr
Readme GPL-3.0 22 MiB
Languages
JavaScript 64.8%
Python 34.8%
CSS 0.2%