Profile
Back to NewsBack
GitHub Trending 24 min
Reader Mode
martinargalas/ha-arr-stack-card: An all-in-one Home Assistant dashboard card for your media server stack — Radarr, Sonarr, Lidarr, qBittorrent, Deluge, rTorrent, SABnzbd, NZBGet, Seerr, Bazarr, Plex, Kodi, Emby, Tautulli, Jellystat, Tracearr, Prowlar

martinargalas/ha-arr-stack-card: An all-in-one Home Assistant dashboard card for your media server stack — Radarr, Sonarr, Lidarr, qBittorrent, Deluge, rTorrent, SABnzbd, NZBGet, Seerr, Bazarr, Plex, Kodi, Emby, Tautulli, Jellystat, Tracearr, Prowlar

4 hours ago

Arr Stack Card

HACS</a> version</a> Home Assistant</a> License: MIT</a> Discord</a> Website</a>

Live demo and screenshots

Buy Me A Coffee

Join Discord

Manage your full media server stack — Radarr, Sonarr, Lidarr, qBittorrent, Deluge, rTorrent, Transmission, SABnzbd, NZBGet, Seerr (Overseerr/Jellyseerr), Bazarr, Plex, Jellyfin, Emby, Kodi, Tautulli, Jellystat, Tracearr, Prowlarr, Maintainerr, SuggestArr, Trakt, and Last.fm — directly from Home Assistant with a single unified dashboard card.

See it at arrcard.argalas.org — screenshots for every screen, and a live demo you can click through with just the apps you run.

At a glance

             

!Actions menu

!Maintainerr

!SuggestArr

!Mobile


[!IMPORTANT]
This project consists of two components — both are required:
- Arr Stack Integration — backend proxy (install first)
- Arr Stack Card (this repo) — the Lovelace frontend card

Quick Setup

  1. Install Arr Stack Integration via HACS → Integrations
  2. Install Arr Stack Card via HACS → Frontend (see Installation below)
  3. Add custom:arr-stack-card to your dashboard — done
type: custom:arr-stack-card

The card automatically shows only the services you have configured. No YAML required to get started.


Supported services

| Service | Role | Required | |---------|------|----------| | Radarr | Movie library, downloads, interactive search | ✅ Yes | | Sonarr | TV library, episode calendar, downloads | ✅ Yes | | Lidarr | Music library — artists, albums, downloads; needed for any music elsewhere in the card | Optional | | Radarr 2 | Second Radarr instance — HD + 4K workflow | Optional | | Sonarr 2 | Second Sonarr instance — HD + 4K workflow | Optional | | qBittorrent | Torrent download management | Optional | | Deluge | Torrent download management | Optional | | rTorrent / ruTorrent | Torrent download management | Optional | | Transmission | Torrent download management | Optional | | SABnzbd | Usenet download management | Optional | | NZBGet | Usenet download management | Optional | | Seerr (Overseerr / Jellyseerr) | Media requests, discovery, approvals, Similar titles | Optional | | TMDB | Posters, ratings, cast, trailers, Trending and Popular rows, Similar titles | Not needed with Seerr — your own free key otherwise | | Bazarr | Subtitle status per movie/show | Optional | | Plex | Active stream monitoring and playback control | Optional | | Jellyfin | Active stream monitoring and playback control | Optional | | Emby | Active stream monitoring and playback control | Optional | | Kodi | Active stream monitoring and playback control | Optional | | Tautulli | Watch history, statistics, and usage graphs | Optional | | Jellystat | Watch history, statistics, and usage graphs | Optional | | Tracearr (beta) | Watch history, statistics, and usage graphs | Optional | | Prowlarr | Indexer management and search statistics | Optional | | Trakt | Film and show recommendations — needs a paid VIP account | Optional | | SuggestArr | Free film and show recommendations from what you have watched | Optional | | Last.fm | Music recommendations — free API key, needs Lidarr | Optional | | Maintainerr | Automatic library cleanup — adds "Gone in" countdowns everywhere | Optional | | Gluetun | VPN status indicator in the downloads panel | Optional |

Services not configured in the integration are hidden automatically — no manual configuration needed.


Features

Downloads (left panel)

The left panel appears when at least one download manager is configured. You can enable, disable, and reorder clients from the visual editor (Left Panel — Download Clients section).

  • qBittorrent — active torrents with download and upload speed, progress, seeder/leecher counts. Pause, resume, stop seeding, delete (with or without files), global pause/resume, sort by progress, speed or the date it was added. Total speed chip shows combined download and upload across all active torrents.
  • Deluge — same feature set as qBittorrent: active torrents, speed, progress, seeds/peers, pause/resume per torrent and globally, delete with or without files.
  • rTorrent / ruTorrent — same feature set as qBittorrent: active torrents, speed, progress, seeds/peers, pause/resume per torrent and globally, delete with or without files. Connects via the ruTorrent XMLRPC endpoint.
  • Transmission — same feature set as qBittorrent: active torrents, speed, progress, seeds/peers, pause/resume per torrent and globally, delete with or without files. Connects over Transmission's own RPC, so Home Assistant's Transmission integration is not needed.
  • SABnzbd — NZB queue with progress and speed, completed downloads inline, failed history with retry/delete, global pause/resume.
  • NZBGet — NZB queue with progress, post-processing status, failed history with retry/delete, global pause/resume.
  • Disk space — free space with usage bar, sourced from Radarr and Sonarr root folders. Disks are deduplicated automatically. If your media is spread across multiple disks, use the chevron arrows to page through them.
  • Gluetun VPN — when Gluetun is configured, a shield badge appears in the downloads panel showing your VPN status, public IP, country, and provider logo.

Gluetun setup

Gluetun requires its control server API to be reachable from Home Assistant. Three things are needed:

  1. Expose port 8000 in your Gluetun container (map it to any host port, e.g. 8002:8000).
  2. Create an API key config at /gluetun/auth/config.toml inside the container (bind-mounted from your host):
[[roles]]
   name = "admin"
   auth = "apikey"
   apikey = "your-api-key"
   routes = ["GET /v1/vpn/status", "GET /v1/publicip/ip"]
  1. Enter the URL and API key in the Arr Stack Integration settings — use the host address HA can reach, e.g. http://192.168.1.10:8002.

Right panel — configurable sections

The right panel is modular. You choose which sections appear and in what order via the visual editor. Each section can be enabled or disabled independently.

Movies & TV Shows

  • Recently Added — your latest downloads, sorted by date. With Lidarr configured, new albums appear alongside films and shows, and a filter in the header narrows the row to one or the other.
  • Recently Requested — titles you've requested that are still downloading or waiting, music included.
  • Movies — your full movie collection with download status, ratings, audio tracks, and subtitle availability. Click any title to open a detail popup with poster, overview, ratings, and a trailer link. From there you can run an Interactive Search to manually pick a release, or cast directly to a Plex device.
  • TV Shows — your full series collection with per-season progress, ratings, and subtitle status. Includes an upcoming episodes calendar with air dates. Interactive Search and Plex cast available here too.

Library

A full-screen panel for browsing and managing your entire collection — movies, TV shows, and music when Lidarr is configured. Open it via the Library button in the right panel. Enabled by default for new installs.

  • Poster and table view — switch between a resizable poster grid and a compact list with ratings, quality, file size, and status at a glance. In poster view, drag the grip handle to adjust column count on the fly — your choice is remembered.
  • Status badges — each poster shows whether a title is available, downloading, missing, or waiting for a quality upgrade. Subtitle availability shown where configured.
  • Filter and sort — filter by Movies, TV Shows, Music, or all together; sort by Recently Added, Title, Rating, or Quality; search by title. In table view, click any column header to sort by that column — click again to reverse the order.
  • Top Quality — filter to see only movies that have a file but haven't reached your preferred quality yet.
  • Multiple instances — if you run two separate movie or TV servers, switch between them or browse everything together in the Both Instances tab.
  • Bulk actions — select individual titles or use Select All, then change quality profile, add or remove tags, or delete titles. Changes apply immediately to the right server.
  • Update All — refresh metadata for your selection; RSS Sync — pull the latest releases from your indexers.
  • Item count shown in the header so you always know how many titles match your current filter.

Calendar

Upcoming movies and TV episodes from Radarr and Sonarr — and album releases when Lidarr is configured. Click the calendar icon to open a full view with tabs for All, Shows, Movies, and Music.

Switch between a week and a month view — the month view is available on tablets and desktops, where there is room to show a whole month at once. Your choice is remembered. Click any day to see everything airing or releasing that day; click a title to open its detail popup.

Music

Fill in Lidarr and the card handles music the same way it handles films and shows — same rows, same detail, same searching.

  • Artists — click any artist for their full discography: which albums you have, how much of each is on disk, and what is still missing. Monitor or unmonitor an album, delete one from disk, or open its track list.
  • Finding releases — the same Automatic and Interactive search a film gets. Interactive lists what your indexers offer for that album, with quality, size and seeders, and you pick the one you want. Progress appears on the album while it downloads.
  • Everywhere else — music joins Recently Added, Recently Requested, the Calendar, the Library and the Activity queue. Each of those has a filter in its header for All, films and shows, or music alone, and remembers your choice.
  • Search — search by artist. Anyone not in your library yet can be previewed first, with their albums from MusicBrainz, and added straight from the result.
  • Now Playing — a track playing on Plex opens its artist, with play, pause and skip under the name.

Discovery & Recommendations

  • Trending, popular, upcoming — movies and TV shows, always available
  • Recommendations — one row for everything suggested to you, whether that is a film, a show or an artist. Which services feed it is up to you (Right Panel → Recommendations in the editor):
| Source | What it suggests | What it needs | |--------|------------------|---------------| | Trakt | Films and shows, from your Trakt watch history | A paid Trakt VIP account | | SuggestArr | Films and shows, from what you actually watched on Plex, Jellyfin or Emby | Free, self-hosted | | Last.fm | Artists you do not own yet | A free Last.fm API key, and Lidarr |

With more than one source on, the row deals them out in turn — film, show, artist, film, show, artist — so the first page carries all three rather than whichever service happened to return the most. Each poster wears the mark of the service it came from, and keeps that service's own buttons on its edges:

- Seen or Like (left edge) — tells the service you know this one. Trakt marks it watched, which feeds your history back into future suggestions; Last.fm takes it as "more like this". - Skip (right edge) — retires the title without saying you watched it. For things you are simply not interested in.

Either way the poster steps aside and the next suggestion moves up. When Lidarr is configured, a filter in the header narrows the row to films and shows, or to music alone — and remembers what you chose.

Trakt needs a scrobbler to reflect what you have actually watched. If you use Plex, PlexTraktSync does that — run it in watch mode and it marks titles as watched in real time.

SuggestArr — turn off automatic requests in SuggestArr's own settings. Otherwise its background job sends requests to Seerr on its own schedule and you only find out afterwards; with it off, suggestions wait in the card until you approve them. It also refreshes its pool on a schedule of its own, so a new batch can take a while to appear after you work through the current one. See SuggestArr for setup.

Last.fm builds its list from what you actually listen to. Give it your username and it reads your scrobbles, wherever they come from: Plexamp, Spotify, Apple Music, YouTube Music, a phone, a car — anything that scrobbles to Last.fm counts, not only what you play on your own server. Leave the username out and it falls back to your server's own play history. The plus button on a poster adds the artist to Lidarr, asking only for a quality profile and how much of their catalogue to monitor. A free API key is all it needs.

  • One-click or profile-based requests directly to Radarr/Sonarr, or via Seerr
  • With Seerr: approve and decline pending requests, family and guest account support with per-user request management

Now Playing

Live view of what's playing across your media servers — title, poster, progress bar, and source badge. Auto-hidden when nothing is playing. Supports Plex, Jellyfin, Emby, and Kodi simultaneously.

Turn on Show playback details in the editor and each stream also says how it reaches its player — Direct Play, Direct Stream or Transcode, with the resolution and bitrate. The method is coloured by what it costs your server: green costs nothing, blue next to nothing, orange keeps the processor busy.

Films, episodes and music alike, from whichever client is playing them — a TV app, a browser tab, Plexamp on a phone. A track shows its cover and artist, and clicking it opens that artist with play, pause and skip under the name, so the row doubles as a remote for whatever is playing.

Plex — requires the official Plex HA integration. Configuring Plex in the Arr Stack Integration additionally enables:

  • Active user shown on the stream card
  • Remote stream termination (stop with a message) — works for all clients
  • Full playback controls (play, pause, next, previous) — Plexamp only
Plex Server URL — the integration auto-detects your server address during setup. If Home Assistant runs on a different machine or VLAN than Plex, you can override it with the address HA can reach (e.g. http://192.168.1.10:32400).

Jellyfin — takes either the official Jellyfin HA integration or JellyHA. One of them is enough; nothing to configure in Arr Stack either way. With both installed, the card uses the best of each and never shows a stream twice.

Which one should you install?
> - Official integration — what is playing, the HDR / Dolby Vision badge, stop playback with a message on the screen, and the surest match to your Radarr and Sonarr libraries.
- JellyHA — everything above, plus what the official one cannot do: play and pause, skip to the next episode or track, and a progress bar you can click or drag to jump anywhere in the film. It also adds Play on, so you can start a title on any of your Jellyfin devices, and posters vanish the moment someone stops watching instead of lingering.
- Both — the pairing the card is happiest with: JellyHA runs the playback, the official integration keeps titles matched to your libraries.
> Just leave JellyHA's players named the way it created them — that is how the card knows which devices are your Jellyfin ones.

Emby — enter your Emby server URL and API key in the Arr Stack Integration setup (Plex / Emby step). Enables stream monitoring and remote stop with a message.

Kodi — requires the official Kodi HA integration. Stream monitoring and stop with a notification work automatically once connected — no additional configuration needed in Arr Stack.

Play on a device

Found something you want to watch? Play on in a film or show's Actions menu starts it on a TV, a phone or a browser without touching another app. Pick the device from the list and playback begins.

It works for both servers, and when you have both, each entry says which one it will use — Play on Plex or Play on Jellyfin.

For Plex you need Plex set up in the Arr Stack Integration and the official Plex HA integration connected. For Jellyfin you need JellyHA. Either way the title has to exist in that server's library, and the device has to be switched on.

Sending to the Plex mobile app only works while the app is open on its player screen — a phone sitting idle will not wake up for it. That is Plex's own limitation, not the card's.

Activity Queue

Four-tab panel covering everything happening across your Radarr and Sonarr instances. Admin-only.

  • Queue — what's downloading right now with progress, quality, and ETA, music included. Manual Import or one-click remove with blocklist option.
  • History — recent grabs and imports, filterable by event type, source, or quality.
  • Blocklist — manage blocked releases.
  • Missing — everything without a file. Filter, adjust monitoring, and trigger Interactive or Auto Search without leaving the panel.
The panel fits exactly as many items as your screen allows — no overflow, no scrollbar, clean layout from the first load.

Statistics (Tautulli / Jellystat / Tracearr)

Playback statistics from Tautulli, Jellystat, or Tracearr (configure any combination). Admin-only.

  • Watch history with search and filters
  • Play count and duration charts by day, day of week, hour, and media type
  • Per-user and per-library statistics
  • Account sharing detection — flags when the same account streams from multiple IPs simultaneously (Tautulli)
  • Tracearr (beta) — watch patterns, completion rates, device and bandwidth analytics, binge highlights. Works with Plex, Jellyfin, and Emby.

Maintainerr

Maintainerr decides what leaves your library — rules like "delete a movie 30 days after everyone has watched it". The card gives it a category of its own, and, more importantly, brings its verdict everywhere else.

  • Gone in tags — any title queued for deletion carries a countdown badge on its poster, in every category and in its detail popup. This is the main reason to connect Maintainerr: you see what is about to disappear while browsing, not only when you go looking for it. Clicking the badge opens the collection the title is queued in.
  • Rules — browse, run, edit, and create rules without leaving Home Assistant, including the full condition builder and importing a rule from YAML.
  • Collections — see what is queued, when each title goes, and how much space it will free. Add or remove titles by hand, and manage exclusions for anything that should never be touched.
  • Calendar — the deletion schedule laid out by day, so nothing surprises you.
  • Storage — disk usage and how much the cleanup has reclaimed so far.
Maintainerr needs no password, so only its address goes into the integration.

Indexers (Prowlarr)

Indexer overview and search statistics from Prowlarr.

  • Indexer health and status at a glance
  • Per-indexer search success rate and response time
  • User-agent breakdown — which apps hit your indexers and how often

Across the card

Title detail popup

Clicking any poster — anywhere in the card — opens the same detail popup: backdrop, overview, ratings, cast and trailer, plus everything the card knows about your own copy. Files on disk are described in their own row: the quality of the file you actually have (for example 1080p · BluRay), which audio tracks it carries and which subtitles are available.

The buttons at the top of the popup are grouped into three menus, one open at a time:

  • Search — Automatic or Interactive search, per instance if you run two. Automatic hands the job to Radarr or Sonarr; Interactive lists the releases and lets you pick one yourself, with episode-level control for shows.
  • Remove — remove from the library, or from the library and disk. Always asks for confirmation first.
  • Actions — everything else, described below.

Actions menu

Actions collects the things you would otherwise go looking for in other parts of the card, or in another application entirely. Every entry appears only when it can actually do something, so the menu is short and never offers a dead end.

| Action | Appears when | What it does | |--------|--------------|--------------| | Show in library | The title is in Radarr or Sonarr | Opens the Library panel filtered to it — and takes you back when you close it | | Jump to download | It is downloading right now | Opens the Activity queue on that item | | Stop playback | Someone is watching it | Stops the stream, with a message to the player | | Play on | The file exists and Plex or Jellyfin can reach a device | Starts it on any device that is switched on | | Open in Plex / Jellyfin / Emby | Someone is watching it | Opens the title on the server it is playing on | | Schedule for removal | Maintainerr is configured | Queues the title, or individual seasons, for deletion | | Cancel scheduled removal | It is queued for deletion | Takes it back out | | Exclude from removal | Maintainerr is configured | Marks it as never to be touched by the rules | | Withdraw request | You have a pending request for it | Cancels the request in Seerr | | Upcoming episodes | It is a running show | The next air dates, without opening the calendar | | Watch statistics | A statistics service is configured | Who watched it, how long, and when |

Where watch statistics come from. If you run Tracearr, it answers, because it already watches Plex, Jellyfin and Emby together and reports one honest total per title rather than a separate number per server. Without it the card falls back to Jellystat for Jellyfin and Tautulli for Plex, whichever can find the title. The icon on the menu row tells you which one was asked.

Similar titles

Find something like the title you are looking at — by what it is about, not by its name. A disaster film finds disaster films, not everything with "2012" in the title.

Open it from the ≈ button on any search result, or from Actions in a film, series or artist detail.

  • Films and series find each other, and a film also brings its soundtrack. An artist finds similar artists.
  • The words the match was made on are shown above the results — switch one off and the results follow.
  • Filters: cast, genre, year, country of origin, sort, and hide what you already have.
  • Cast, genre and country can each include or exclude. Pick the countries you want to see, or leave one out and keep everything else — useful for "American, but not the British co-productions".
  • Click a result to open its detail, or request it straight from the grid.
Films and series need Seerr or your own TMDB key; music needs Lidarr. Year, country, sort, hide-owned and the genres you left out are remembered for next time.

Downloads identified by title

Rows in the qBittorrent, Deluge, rTorrent, Transmission, SABnzbd and NZBGet lists are matched back to the movie or episode they belong to, so clicking one opens that title's detail popup with its poster and description — no need to read a release name to work out what is downloading.

Anything added by hand, outside Radarr and Sonarr, has nothing to open. Clicking those says so plainly instead of opening the wrong title.

Poster display settings

Control what appears on poster cards across all categories. All options are available in the visual editor under Posters.

  • Title — show or hide the title overlay at the bottom of each poster
  • Audio language — show audio track badges (e.g. EN, CZ) on posters where available
  • Subtitles — show subtitle availability badges (requires Bazarr)
  • Rating — show a rating badge on each poster. Choose between IMDb (default) or TMDB as the source
  • Media type tag — a small Movie or TV label in the top-left corner of each poster
  • Language display — how audio and subtitle languages appear on a poster:
- Combined — flags (default) — small country flags tucked around the rating badge, subtitles on the left and audio on the right. Compact enough to leave the artwork visible, and readable at a glance without reading anything - Separate tags — labelled badges with language codes (EN, CZ) instead of flags. Use this if you prefer words to symbols, or if the flags are too small on your screen

Both follow the Audio and Subtitles switches above — turning one off drops that side. The same setting drives the language chips in the title detail popup.

  • "Gone in" countdown — where the Maintainerr deletion countdown appears: in all categories, only inside the Maintainerr panel, or never. Requires Maintainerr.
  • Status display — choose how download and availability status is shown:
- Tags — coloured status badges on the poster (default) - Stripes — a thin coloured bar at the bottom of the poster. When a title is actively downloading, the bar shows a progress indicator - Both — tags and stripes together

Appearance & UX

  • Styling — every colour, surface and corner can be changed, for the whole card or one panel at a time, and the modals by day and by night. A preset takes the look from your Home Assistant theme (styles.preset: ha), so the card matches the rest of your dashboard in one line; the editor's Appearance tab has a colour picker, a hex/RGB field and an opacity slider for each setting, in folding categories. The same settings work from a Home Assistant theme or card-mod. See STYLING.md
  • One visual language across every category and panel — the same capsules, tables, filters and pagination everywhere, so a panel you have never opened still works the way you expect
  • Day / night theming based on sun.sun
  • Responsive layout — mobile, tablet, desktop
  • Sticky navigation bar on mobile
  • Pagination for all sections; configurable columns per category
  • See More overlay — full-screen grid for any section
  • Visual card editor in HA (no YAML required for basic setup)
  • Performance mode — disables backdrop blur
  • Category colour overlays — colour-tinted poster overlays per section, toggle via styles.categoryOverlays
  • Real app icons — uses the actual Radarr, Sonarr, qBittorrent, etc. logos, in their own colours or one colour of your choice; or MDI icons (App icons under Icons in the Appearance tab)
  • UI scale — proportionally scales all card content via styles.uiScale. Useful on large monitors or TVs where the default size is too small
  • Left panel width — adjustable via styles.leftPanelWidth (percentage of card width, default 40)
  • Download client order — enable, disable, and reorder qBittorrent, Deluge, rTorrent, Transmission, SABnzbd, and NZBGet from the visual editor. Only configured clients appear in the list

Requirements

  1. Home Assistant 2024.1+ with HACS installed
  2. Arr Stack Integration configured with at least Radarr and Sonarr
  3. Everything else is optional — unconfigured services are hidden automatically

Self-signed certificates / reverse proxies

If any of your services uses a self-signed or untrusted certificate, enable Skip SSL certificate verification in the integration's Global Settings. This covers all services at once.


Installation

Via HACS (recommended)

  1. Open HACS → Frontend
  2. Click the ⋮ menu (top right) → Custom repositories
  3. Add https://github.com/martinargalas/ha-arr-stack-card — category Dashboard
  4. Search for Arr Stack Card and install
  5. Hard refresh your browser (Cmd+Shift+R / Ctrl+Shift+R)

Manual

  1. Download the repository's dist folder — the card is several files and they belong together
  2. Copy its contents into /config/www/, side by side. When updating, replace them all.
  3. Add one of them to Lovelace resources:
url: /local/arr-stack-card.js
   type: module

Configuration

The card works with no YAML at all — it shows whatever the integration has configured. When you do want to change something, the visual editor covers nearly everything: open the dashboard editor and click the pencil on the card.

Every key, its default and the list of category ids live in CONFIGURATION.md.


Multi-user setup (Seerr — optional)

Without Seerr, all HA users can add media directly to Radarr/Sonarr.

| HA account | What they can do | |------------|-----------------| | Admin | Browse, request, approve/decline pending requests | | Non-admin | Browse, request, view and withdraw own requests |

Setup:

  1. In Seerr — create a non-admin user (Settings → Users → Add User).
  2. In Home Assistant — create a non-admin HA user for each family member (Settings → People → Add Person → uncheck Administrator).
  3. In the Arr Stack integration settings — enter that user's email and password as the Family account.

Guest account (optional)

If you have visitors or temporary users who should use a separate Seerr account, create a second non-admin user in Seerr and enter their credentials as the Guest account in the integration settings. Once both Family and Guest accounts are configured, a Users tab appears in the card editor where you can assign specific HA users to either account. Users not explicitly mapped default to the Family account.

One-click requests

By default, requesting a movie or show opens a profile selection overlay. Enable One-click Request in the card editor to skip the overlay and use your configured defaults instead — one tap to request.

Available settings (card editor → One-click Request):

  • Season mode — which seasons to request for shows: first season only, latest season, or all seasons
  • Non-admin only — restrict one-click to non-admin users while admins keep the full profile picker

Analytics

Arr Stack Card sends one anonymous ping when it loads in a browser, one more the first time you use it in that session, and one if a part of the card fails to download. The following data is collected:

| Field | What it contains | |-------|-----------------| | Card version | e.g. 1.9.7 | | Installation ID | A random-looking value, the same for your whole Home Assistant installation. It is a salted SHA-256 hash of Home Assistant's own instance ID, so it cannot be turned back into that ID or matched with Home Assistant's own analytics. Without the Arr Stack integration, a random value kept in your browser is used instead | | Enabled integrations | Which services are configured (e.g. Plex, Bazarr, qBittorrent) — no credentials, URLs, or settings | | Mobile flag | Whether the card is shown on a screen narrower than 600 px | | Activation flag | Whether you interacted with the card during this session (clicked anything) | | Failed window | The name of a part of the card that could not be downloaded (e.g. activity), if that happens |

No IP addresses, hostnames, usernames, media titles, or any personally identifiable information are stored. Rate-limited to one ping per IP per minute on the server side. Data is retained for 6 months.

Live usage stats (public): argalas.org/arr-stats

Opting out

If you would rather not take part, you can switch it off: Settings → Devices & Services → Arr Stack → Reconfigure, tick Metrics collection in the service list, then turn on the opt-out switch on the last step. This installation stops sending anything from that moment on.


Contributing

The card's source is in src/ and pull requests are welcome — see CONTRIBUTING.md for how to build it and how the source is laid out.


License

MIT

Chat with me