Homepage dashboard improvements #76

Merged
eblume merged 13 commits from feature/homepage-dashboard-updates into main 2026-01-30 15:05:03 -08:00

13 commits

Author SHA1 Message Date
a8ea20f76f Add extra manifests source to Homepage app
Allows ExternalSecrets and other manifests in the homepage directory

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:57:12 -08:00
7ae1a4c03b Add OpenWeatherMap weather widget to Homepage
- ExternalSecret pulls API key from 1Password
- Widget shows weather for Camano area
- Uses imperial units with 15min cache

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:54:04 -08:00
5c6cddba0d Revert Grafana iframe embedding attempt
Iframe approach didn't work well:
- Homepage iframe widget only supports height, not width constraints
- Some panels fail to load even with anonymous auth
- Reverted to authenticated-only Grafana access

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:41:14 -08:00
91e78ff6a5 Constrain Tesla battery chart width to w-72 (~288px)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:32:03 -08:00
8aea01ed8c Fix temp gauges: use car_id=All and add width constraint
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:30:57 -08:00
51072fcdd0 Add Tesla temperature gauges to Homepage metrics
- Increase battery chart height to h-96
- Add outside temp gauge (panelId=8)
- Add inside temp gauge (panelId=9)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:26:07 -08:00
e1be32f2d8 Add Grafana iframe embed for Tesla battery chart
Test embed of TeslaMate charge level panel using anonymous auth

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:17:03 -08:00
0c09177d08 Enable anonymous auth for Grafana iframe embeds
Public dashboards don't support template variables or PostgreSQL
datasources, so anonymous auth is required for Homepage embeds.

Security relies on Tailscale ACLs - see zk grafana card.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:11:29 -08:00
bee85d70ed Enable Grafana panel embedding and public dashboards
- allow_embedding: true - allows iframe embedding
- cookie_samesite: lax - fixes session cookies in iframes
- public_dashboards: enabled - per-dashboard public sharing via UI

Public dashboard settings persist in SQLite DB on PVC.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:05:12 -08:00
55c906b362 Add disk usage metrics to Sifaka NAS widget
Shows used and total space from /Volumes/backups mount

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:42:47 -08:00
4b13bb7ff9 Add archive size metric to borgmatic widget
Shows deduplicated repository size alongside time since last backup

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:35:32 -08:00
a423b9aa04 Add borgmatic backup status widget to Homepage
Displays time since last backup using prometheusmetric widget
querying Prometheus for borgmatic_last_archive_timestamp

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:33:52 -08:00
f358ee6c91 Fix ArgoCD icon name in Homepage annotation
Dashboard Icons uses argo-cd.png (with hyphen), not argocd.png

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:29:49 -08:00