@muhammedaksam/easiarr
v1.1.0
Published
TUI tool for generating docker-compose files for the *arr media ecosystem with 41 apps, TRaSH Guides best practices, VPN routing, and Traefik reverse proxy support
Downloads
4,176
Maintainers
Readme
easiarr
It could be easiarr.
⚠️ Work In Progress - This project is in early experimental development. Features may be incomplete, unstable, or change without notice.
TUI tool for generating docker-compose files for the *arr media ecosystem with 47 apps, TRaSH Guides best practices, VPN routing, and Traefik reverse proxy support.
A terminal-based wizard that helps you set up Radarr, Sonarr, Prowlarr, and other *arr applications with Docker Compose, following best practices from TRaSH Guides.
Features
- 📦 Quick Setup Wizard - Get started in minutes with a guided setup flow
- 🐳 Docker Compose Generation - Automatically generates optimized
docker-compose.yml - ✅ TRaSH Guides Compliant - Follows best practices for folder structure and hardlinks
- 🎮 Container Control - Start, stop, and restart containers directly from the TUI
- ⚙️ App Management - Add or remove apps from your stack with ease
- 💾 Persistent Configuration - Settings saved to
~/.easiarr/config.json
Quick Start
Run directly with bunx (no installation required)
bunx @muhammedaksam/easiarrOr install globally
bun add -g @muhammedaksam/easiarr
easiarrOr clone and run locally
git clone https://github.com/muhammedaksam/easiarr.git
cd easiarr
bun install
bun run startRequirements
Supported Applications (47 apps across 10 categories)
Media Management (Servarr)
- Radarr - Movie collection manager
- Sonarr - TV series collection manager
- Lidarr - Music collection manager
- Readarr - Book collection manager
- Bazarr - Subtitle manager for Sonarr/Radarr
- Mylar3 - Comic book collection manager
- Whisparr - Adult media collection manager
- Audiobookshelf - Audiobook and podcast server
Indexers
- Prowlarr - Indexer manager for *arr apps
- Jackett - Alternative indexer manager
- FlareSolverr - Cloudflare bypass proxy
Download Clients
- qBittorrent - BitTorrent client
- SABnzbd - Usenet downloader
Media Servers
- Plex - Media server with streaming
- Jellyfin - Free open-source media server
- Tautulli - Plex monitoring and statistics
- Tdarr - Audio/video transcoding automation
Request Management
- Overseerr - Request management for Plex
- Jellyseerr - Request management for Jellyfin
Dashboards
- Homarr - Modern dashboard for all services
- Heimdall - Application dashboard and launcher
- Homepage - Highly customizable application dashboard
Utilities
- Portainer - Docker container management UI
- Huntarr - Missing content manager for *arr apps
- Unpackerr - Archive extraction for *arr apps
- FileBot - Media file renaming and automator
- Chromium - Web browser for secure remote browsing
- Guacamole - Clientless remote desktop gateway
- DDNS-Updater - Dynamic DNS record updater
VPN
- Gluetun - VPN client container for routing traffic
Monitoring
- Grafana - Visual monitoring dashboard
- Prometheus - Systems and service monitoring
- Dozzle - Real-time log viewer for Docker containers
- Uptime Kuma - Self-hosted monitoring tool
Infrastructure
- Traefik - Reverse proxy and load balancer
- Cloudflared - Cloudflare Tunnel for secure external access
- Traefik Certs Dumper - Extracts certificates from Traefik
- CrowdSec - Intrusion prevention system
- Headscale - Open-source Tailscale control server
- Headplane - Headscale web UI
- Tailscale - VPN mesh network client
- Authentik - Identity provider and SSO
- PostgreSQL - Database server
- Valkey - Redis-compatible key-value store
Cloudflare Tunnel Setup
Expose your services securely without port forwarding using Cloudflare Tunnel.
Automated Setup (Recommended)
Create a Cloudflare API Token at dash.cloudflare.com/profile/api-tokens with:
Account:Account Settings:Read(required)Account:Cloudflare Tunnel:EditZone:DNS:EditAccount:Access: Apps and Policies:Edit(optional - protects services with email login)
Run easiarr → Main Menu → ☁️ Cloudflare Tunnel
Paste your API token and follow the wizard
The wizard will automatically:
- Create the tunnel
- Add DNS records
- Configure ingress rules
- Optionally set up email authentication via Cloudflare Access
Configuration
easiarr stores its configuration in ~/.easiarr/:
~/.easiarr/
├── config.json # Your easiarr configuration
├── docker-compose.yml # Generated Docker Compose file
└── backups/ # Configuration backupsDevelopment
# Install dependencies
bun install
# Run in development mode (with watch)
bun run dev
# Type check
bun run typecheck
# Lint
bun run lint
# Format
bun run format
# Run all checks (typecheck + lint + format:check)
bun run check
# Fix all issues (lint:fix + format)
bun run fixLicense
This project is licensed under the MIT License - see the LICENSE file for details.
Related Projects
- TRaSH Guides - Quality guides for Radarr, Sonarr, and more
- OpenTUI - Terminal UI framework used by easiarr
