Skip to content

Widgets on widgetsSchema 3, the app's card, and a now-playing widget for Jellyfin - #71

Merged
jerodfritz merged 7 commits into
stagingfrom
feature/app-card-widgets
Oct 9, 2026
Merged

jerodfritz merged 7 commits into
stagingfrom
feature/app-card-widgets

Conversation

@AverageCakeSlice

Copy link
Copy Markdown
Contributor

What changed

  • Validator and types for widgetsSchema 3. A widget is the app's dashboard card, with its own background and slots. The sizes of schema 2 are gone, an image is never a slot (artwork is the background), and a list slot may say how many rows it shows.
  • FileFlows, Scrutiny and the hexos-test harness moved to schema 3.
  • Plex moved to schema 3, with each stream's artwork behind the card. The script fetches the wide artwork once per stream, caps it to the image field's size, and keeps it while the stream plays.
  • Jellyfin gets a now-playing widget, the same card Plex draws. The setup hook creates the API key the widget reads sessions with; without the key, the widget asks the user to sign in.

bun run _lib/validate.ts: 52 install scripts, 0 errors, 0 warnings, after merging staging. Staging's hexos-test harness was still on schema 2; it's migrated here.

Merge after eshtek/hexos-platform#2058, which teaches the platform widgetsSchema 3. A box still on the old platform drops these widgets.

🤖 Generated with Claude Code

AverageCakeSlice and others added 7 commits October 4, 2026 10:12
… type support for the card size and progress
…, with its own background and slots

The sizes of widgetsSchema 2 are gone, an image is never a slot (the artwork is the background), and a list slot may say how many rows it shows.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…behind the card

The script fetches each stream's wide artwork once, caps it to the image field's size and keeps it while the stream plays.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The setup hook creates the API key the widget reads sessions with; without it the widget asks the user to sign in.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@jerodfritz
jerodfritz merged commit 46beb5a into staging Oct 9, 2026
1 check passed
@jerodfritz
jerodfritz deleted the feature/app-card-widgets branch October 9, 2026 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants