Skip to content

v0.2.35

Latest

Choose a tag to compare

@github-actions github-actions released this 16 Jul 15:30
19ec45c

Changes

  • fix(wifi): normalise dBm/percentage signal strength (POC) (#116) @stein155
  • chore(deps): bump the github-actions group with 3 updates (#117) @dependabot[bot]
  • chore(deps-dev): bump the npm-development group in /frontend with 2 updates (#118) @dependabot[bot]
  • Settings: flags, layout & copy fixes + plugin update disk hygiene (#114) @stein155
  • feat(speaker): audio notifications via /speaker (replaces PCM) (#113) @stein155
  • Redesign the plugin settings UI (iOS-style sections, slider + times fields, dark mode fixes) (#110) @milderdb
  • Add Afvalwijzer plugin to the catalog (#107) @milderdb
  • plugins: select field type in the manifest renderer (#109) @milderdb
  • display: flicker-free content next to the firmware standby clock (#108) @milderdb
  • Show internet radio icon on SoundTouch displays (#105) @milderdb
  • Central OLED display manager + /api/display plugin endpoints (#106) @milderdb
  • feat(plugins): hide version, flag updates with a "!" badge (#104) @milderdb
  • feat: browse TuneIn by genre/region (#101) @milderdb
  • fix: security & robustness bugs from an adversarial audit (#103) @milderdb
  • fix: four bugs found by an adversarial audit (#102) @milderdb
  • test(frontend): cover API client, MiniPlayer, StationLogo, optimistic playback (#100) @milderdb
  • refactor(frontend): migrate the web UI to TypeScript (strict) (#99) @milderdb
  • feat(settings): iOS-style Wi-Fi network settings (#62) @stein155
  • fix(icy): decode Latin-1/Windows-1252 now-playing metadata (#98) @stein155
  • test(sim): cover the simulator's wire format + state machine (#97) @milderdb
  • refactor(frontend): component-per-folder layout with styled/index.js (#96) @milderdb
  • chore: build the frontend on Node 24 (current LTS) (#95) @milderdb
  • fix(frontend): resolve 8 UI state/lifecycle bugs (#94) @milderdb
  • feat(display): show the live track on the speaker's own display via marge (#93) @milderdb
  • refactor(web): extract telnet LAN-block into internal/telnet (#92) @milderdb
  • refactor(speaker): own native-preset play and ContentItem XML (#91) @milderdb
  • refactor: extract now-playing enrichment from web into internal/nowplaying (#90) @milderdb
  • refactor: extract self-update engine from web into internal/update (#89) @milderdb
  • feat(ui): tidy plugins UI — collapsible settings, no run-status text (#88) @stein155
  • docs: regenerate README screenshots in English (#87) @stein155
  • Ship Apple Home as a plugin (catalog entry + generic QR field) (#86) @stein155
  • fix(ui): plugin catalog alignment + localised catalog strings (#85) @stein155
  • Dark mode + gradient backdrop, cleaner scrolled header (#84) @stein155
  • fix(ci): pass --repo to gh pr comment in beta publish job (#83) @stein155
  • feat(security): settings login + close telnet immediately (#81) @stein155
  • Runtime plugin host: install & manage plugins (ring, later HomeKit) from the UI (#79) @stein155
  • feat(security): activate release signing; harden beta build workflow (#82) @stein155
  • fix(security): harden logo proxy, SSRF, MQTT and update path (#80) @stein155
  • chore(deps-dev): bump vitest from 4.1.9 to 4.1.10 in /frontend in the npm-development group (#78) @dependabot[bot]

Install / update

Install or update wirelessly from your computer:

curl -fsSL https://raw.githubusercontent.com/stein155/retouch/main/install/install.sh | sh