# 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 `/downloads` and 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 1. **Copy the environment template**: ```bash cp .env.example .env ``` 2. **Configure paths**: Edit `.env` and set the paths to your downloads and media folders. By default, it uses folders within the project directory. 3. **Review Configuration**: Check `config/app.toml` to customize organizer rules, naming templates, and more. 4. **Start Sortarr**: ```bash docker compose up -d --build ``` ### 3. Usage - **Web Dashboard**: Open `http://localhost:8088` (or the port you configured). - **First Run**: By default, `SORTARR_DRY_RUN` is `false` in this distribution. If you want to test first, set it to `true` in 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/src` to 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.