Skip to content

Releases: samuelloranger/labby

v1.5.0 — Emby, SABnzbd, Plex + per-device reorder

29 Jun 23:14
222f411

Choose a tag to compare

New integrations

  • Emby — now-playing sessions
  • SABnzbd — download queue
  • Plex — now-playing with server-side image proxy (SSRF-guarded)

Improvements

  • Consolidated Jellyfin/Emby/Plex into a unified MediaSessions widget
  • Per-device reorder controls on Manage Services: drag-and-drop on desktop, up/down arrows on touch (HTML5 drag doesn't fire on iOS)
  • Settings page icons for the new integration types

Image

ghcr.io/samuelloranger/labby:1.5.0 (also tagged 1.5, 1, latest) — multi-arch linux/amd64 + arm64.

Full changelog: v1.4.0...v1.5.0

v1.4.0 — Integration-driven layout, bookmarks, backup

27 Jun 15:20

Choose a tag to compare

Image (built + pushed manually, no CI): ghcr.io/samuelloranger/labby:1.4.0 (= :latest)

Features

  • Integration-driven layout — dashboard renders from ordered integrations (no more pages/columns); drag-and-drop reorder on Manage Services with up/down keyboard/iOS fallback. One-time migration folds old layouts into integration order.
  • Bookmarks widget — links editor with favicon auto-fetch.
  • Backup — full export/import of integrations + dashboard.

Hardening (review pass)

  • favicon endpoint: SSRF guard (blocks loopback/private/link-local incl. cloud metadata) + response size cap.
  • Bookmark links sanitized against javascript: href XSS.
  • Restore + layout migration now atomic (single transaction); restore validates integration types and accepts a null dashboard.
  • Reorder repositions the full set (no stale-position collisions).

Breaking

Dashboard JSON schema changed (pages/columns removed). Auto-migrated on first boot.

v1.3.0

19 Jun 20:34

Choose a tag to compare

Tests, performance, and torrent control fixes.

Torrents

  • Pause/resume now works on qBittorrent 5.x (hashes sent in the form body; query-param returned 400).
  • Dedicated play/pause button per torrent with an explicit paused state; optimistic flip on click.

Performance

  • Background aurora no longer animates under the glass cards, so backdrop-filter composites once instead of every frame (fixes sustained lag on weaker GPUs).
  • Lighter blur (20px → 12px) and a prefers-reduced-transparency fallback that drops blur entirely.

UI

  • Removed the global search feature, the card entrance animation, the card hover effect, and the footer tagline.
  • README: logo, badges, Bun install note.

Internal

  • Shared HTTP scaffold across integration clients.
  • Server test coverage ~47% → ~90% (68 → 136 tests) with an isolated test DB.

v1.2.1 — Compact default + 4-column masonry

19 Jun 13:48

Choose a tag to compare

  • Compact density is now the default (fresh installs + any install without a saved density). Explicit density choices still win.
  • Masonry layout shows 4 columns at ≥1600px (was 3).

v1.2.0 - Compact Layout & PWA features

19 Jun 12:30

Choose a tag to compare

Release v1.2.0 adds a brand-new interface customization setting: Compact Mode. It scales down relative font sizes globally to 15px, reduces paddings and margins for dashboard pages, cards, rows, and widgets, and arranges the Monitor widget rows into a highly dense 2-column grid layout on both desktop and mobile viewports. The mobile header has been redesigned to hide time and theme selectors for optimal screen space usage. Modals are now mounted to document.body via a portal action to prevent stacking context clipping. Finally, a Service Worker dynamic cache strategy has been implemented to enable PWA support for offline caching and load acceleration.