This custom Lovelace card provides a beautiful, streamlined overview of your Kopia snapshot statuses right in your Home Assistant dashboard.
It is designed specifically to work with the data exposed by the official-unofficial Home Assistant custom component: Kopia Webhook Integration.
by default some icons are set to recognize some specific backups with custom icons based on external packs (table at the end).
This card listens for the status entities created by the Kopia Webhook Integration. The integration generates a unique sensor for each of the last few snapshots taken for every unique source path (e.g., sensor.kopia_status_[WEBHOOK_ID]_snapshot_slot_0, sensor.kopia_status_[WEBHOOK_ID]_snapshot_slot_1, etc.).
The Kopia Backup Status Card automatically performs the following:
- Filters: It finds all relevant sensors based on the
device(Webhook ID) you provide. - Groups & Sorts: It groups the results by Source Path (e.g., "docker," "nextcloud," "documents").
- Shows Latest: It only displays the single, latest successful snapshot for each unique source path, ensuring your card stays clean and relevant.
- Formatting: It shows the human-readable backup size (e.g., "2.7 GB") and the time elapsed since the snapshot (e.g., "5h ago").
- Custom Icons: It applies smart, recognizable icons based on common source names (e.g.,
mdi:dockerfor Docker).
The easiest way to install the Kopia Backup Card is via HACS.
- Ensure you have HACS (Home Assistant Community Store) installed.
- Click the ... menu in the top right and select Custom repositories.
- Enter the URL of this GitHub repository and select Lovelace as the category.
- Click Add.
- Search for "Kopia Backup" in the HACS Frontend section and click Install.
- Reload your Home Assistant frontend (a hard refresh
Ctrl+F5orShift+F5is recommended).
-
Download the
kopia_backup_card.jsfile from the latest release of this repository. -
Place the file into your Home Assistant configuration directory under
www/kopia_backup_card/.- Path should look like:
/config/www/kopia_backup_card/kopia_backup_card.js
- Path should look like:
-
Add a resource reference in your Lovelace configuration (via the UI or
ui-lovelace.yaml):If using the UI:
- Go to Settings > Dashboards > ... > Resources.
- Click Add Resource.
- URL:
/local/kopia_backup_card/kopia_backup_card.js - Type:
JavaScript Module
After installation, add a new Custom: Kopia Backup Status Card to your dashboard. The only mandatory parameter is device, which links the card to a specific instance of your Kopia Webhook Integration.
| Parameter | Required | Type | Description | Default | Example |
|---|---|---|---|---|---|
| type | Yes | string | Card type. | N/A | custom:kopia-backup-card |
| device | Yes | string | The unique Webhook ID defined during the setup of the Kopia Webhook Integration. This ID is used to find all related snapshot sensors. | N/A | main_server_backups |
| name | No | string | Custom title displayed in the card header. | Kopia Backups |
Production Server |
| title | No | string | Alternative to name (standard HA practice). |
Kopia Backups |
Backup Status |
| show_title | No | boolean | Controls the visibility of the card header. | true |
false |
| show_shadow | No | boolean | Controls the box shadow around the main card and individual backup items. | true |
false |
type: custom:kopia-backup-card
# REQUIRED: This must match the Webhook ID you configured in the Kopia Webhook Integration.
device: main_server_backups
name: Home Server Backups
show_shadow: true # Optional: Keep the shadow effectFrom line 133 of kopia_backup_card.js the custom icons can be changed, set or added with different combinations based on personal need, but some dafault icons are already selected for some specific backups:
| State | Native icon | Icon name |
|---|---|---|
| docker | Yes | mdi:docker |
| immich | Yes | mdi:camera-iris |
| nextcloud | No | phu:nextcloud |
| paperless | No | cust:paperless |
| homeassistant | Yes | mdi:home-assistant |
| photo | Yes | mdi:image-multiple |
| documents | Yes | mdi:file-document |
| github | Yes | mdi:github |
| ollama | Yes | cust:ollama |
| romm | Yes | cust:romm |
| vaultwarden | Yes | cust:vaultwarden |
| plex | Yes | mdi:plex |
| radarr | Yes | phu:radarr |
| sonarr | Yes | phu:sonarr |
| * | Yes | mdi:database-sync |
Custom icons pack used: