desktop: don't embed Navidrome/GitDXD (servers send X-Frame-Options, so the windows were blank)

This commit is contained in:
Martin Dvořák 2026-09-25 08:09:10 +00:00
commit dbff352054
4 changed files with 22 additions and 15 deletions

View file

@ -35,10 +35,10 @@ heatmap**, a gym SBD panel and links to friends' sites.
hidden `ssh` easter egg.
- **Live service status** — each self-hosted service is health-checked through the site's
own API; Minecraft is checked through mcstatus.io.
- **Embedded live services** — opening a self-hosted service (Llama.cpp/Open WebUI,
Jellyfin, Navidrome, GitDXD) from the desktop shows the real site inside the window (an
iframe). The service must allow framing; SMP (Discord) keeps a link card because Discord
sends `X-Frame-Options: DENY`.
- **Embedded live services** — opening a frameable self-hosted service (Llama.cpp/Open WebUI,
Jellyfin) from the desktop shows the real site inside the window (an iframe). Services that
send `X-Frame-Options` / `frame-ancestors` can't be framed, so they keep a link card or their
own app card instead (Navidrome sends `DENY`, Forgejo/GitDXD `SAMEORIGIN`, Discord `DENY`).
- **Minecraft-style SMP window** — the SMP shortcut opens a join menu modelled on
Minecraft's multiplayer screen, with live status, player count, MOTD and version pulled
from mcstatus.io through the site's own ping API.