2.2 KiB
2.2 KiB
Sortarr
Sortarr is a self-hosted Jellyfin media organizer and dashboard. It watches your downloads, plans safe Jellyfin-friendly moves across multiple media drives, and provides a fully editable dashboard to manage your library.
Features
- Automated Organizing: Watches
/downloadsand moves files to appropriate Movie/Show folders. - Multi-Drive Support: Supports up to 4 media drives with smart drive selection.
- Safety First: Optional dry-run mode and atomic move operations.
- Customizable: Fully editable vanilla JS dashboard and TOML-based backend configuration.
- Lightweight: Built with Python and Nginx, optimized for self-hosting.
Getting Started
1. Prerequisites
- Docker and Docker Compose installed on your host.
2. Setup
-
Copy the environment template:
cp .env.example .env -
Configure paths: Edit
.envand set the paths to your downloads and media folders. By default, it uses folders within the project directory. -
Review Configuration: Check
config/app.tomlto customize organizer rules, naming templates, and more. -
Start Sortarr:
docker compose up -d --build
3. Usage
- Web Dashboard: Open
http://localhost:8088(or the port you configured). - First Run: By default,
SORTARR_DRY_RUNisfalsein this distribution. If you want to test first, set it totruein your.env. - Library Scan: Go to the Library page and click "Scan library" to index your existing media.
Directory Structure
backend/: Python backend source and Dockerfile.web/: Dashboard source, Nginx config, and Dockerfile.config/: Configuration files (app.toml,custom-theme.css).data/: Persistent state and cache.logs/: Application logs.downloads/: Default watch directory for incoming media.media/: Default mount points for your media drives.
Customization
- Dashboard: Edit files in
web/srcto change the UI. - Theming: Use the Settings page or edit
config/custom-theme.css. - Logic: Backend logic is in
backend/sortarr/.
License
This project is source-available and intended for personal self-hosting.