Files
yarr/README.md
uttarayan21 48e26332a3
Some checks failed
build / checks-matrix (push) Successful in 19m23s
build / checks-build (push) Has been cancelled
docs / docs (push) Has been cancelled
build / codecov (push) Has been cancelled
feat(config): add configuration management for Yarr TUI app
2025-10-08 15:45:08 +05:30

165 lines
2.5 KiB
Markdown

# Yarr
A Terminal User Interface (TUI) for managing Sonarr.
## Features
- View system status and health
- Browse series and episodes
- Monitor download queue
- View download history
- Interactive TUI interface
- Configurable via config files, environment variables, or CLI arguments
## Installation
```bash
cargo install --path .
```
## Configuration
Yarr supports multiple configuration methods with the following priority order (highest to lowest):
1. Command line arguments
2. Environment variables
3. Configuration file
4. Default values
### Configuration File
Create a configuration file in one of these locations:
- `./yarr.toml` (current directory)
- `~/.config/yarr/config.toml` (user config directory)
Example configuration:
```toml
[sonarr]
url = "http://localhost:8989"
api_key = "your-api-key-here"
```
### Environment Variables
Set these environment variables:
```bash
export YARR_SONARR_URL="http://localhost:8989"
export YARR_SONARR_API_KEY="your-api-key-here"
```
### Command Line Arguments
```bash
yarr --sonarr-url="http://localhost:8989" --sonarr-api-key="your-api-key"
```
## Usage
### TUI Mode (Default)
Launch the interactive TUI:
```bash
yarr
# or explicitly
yarr tui
```
### Command Line Mode
List all series:
```bash
yarr list
```
List only monitored series:
```bash
yarr list --monitored
```
Add a new series:
```bash
yarr add --name "Series Name"
```
### Configuration Management
Create a sample config file:
```bash
yarr config init
```
Create config file at specific location:
```bash
yarr config init --path /path/to/config.toml
```
Show current configuration:
```bash
yarr config show
```
Show configuration file search paths:
```bash
yarr config paths
```
### Shell Completions
Generate shell completions:
```bash
# Bash
yarr completions bash > /etc/bash_completion.d/yarr
# Zsh
yarr completions zsh > ~/.zfunc/_yarr
# Fish
yarr completions fish > ~/.config/fish/completions/yarr.fish
# PowerShell
yarr completions powershell > yarr.ps1
```
## TUI Controls
- `q` - Quit
- `↑/↓` or `j/k` - Navigate up/down
- `Enter` - Select/expand
- `Tab` - Switch between panels
- `r` - Refresh data
## Getting Started
1. Install yarr
2. Create a configuration file:
```bash
yarr config init
```
3. Edit the configuration file to set your Sonarr URL and API key
4. Launch the TUI:
```bash
yarr
```
## Finding Your Sonarr API Key
1. Open your Sonarr web interface
2. Go to Settings > General
3. Find the "Security" section
4. Copy the "API Key" value
## License
MIT