github timmo001/system-bridge 5.14.0

latest release: 5.15.0
2 hours ago

Rebuilds the web client with dashboards, themes and pages grouped by area, and lets you set up Discord from it. Adds CLI commands for media and Discord, and a new logo.

Web client

  • Rebuild the web client with a dashboard for each module, a choice of themes, and pages at their own addresses, such as /media and /discord.
  • Group pages by area (System, Hardware, Storage and network, Apps, Settings), with each module's controls and settings beside its data. Commands, notifications and open live under /system, disk mounts under /disks and media directories under /media.
  • Add media controls with volume, the player's status and its artwork.
  • Add a Discord page with its status, controls and setup.
  • Ask for the program's full path when adding a command.
  • Label buttons, switches, form errors and status for screen readers.
  • Load the JSON view's editor only when it's shown.

See Web client.

Discord

  • Add GET_DISCORD_SETUP and UPDATE_DISCORD_SETUP events to set up Discord over the WebSocket API, and report setup errors. The client secret is never sent back.

See Discord and Discord setup.

Media

  • Control the player the Media module shows, rather than whichever one playerctl picks first (Linux).
  • Send the player's artwork as thumbnail when it's a web or data URL (Linux).
  • Add playerctl as an optional dependency in the deb, rpm and Arch packages. Without it, the Media module is empty.

See Media.

CLI

  • Add client media <action> and client discord <action> to control media and Discord.
  • Add --path to client open to open a page of the web client, such as /media#media-controls.

See CLI.

API

  • Reply to GET_DATA for modules that haven't registered yet, such as Discord before it connects, instead of leaving the client waiting.
  • Return an error from OPEN when the path doesn't exist, instead of claiming it opened.
  • Serve the web client's pages at their own paths.

Connector

  • Add get_discord_setup and update_discord_setup to the Python connector, and Discord setup to the TypeScript connector, keeping the secret redacted.
  • Resolve a Python connector request when the backend replies with an error, instead of timing out.
  • Stop waiting for module data in the TypeScript connector once every module has answered.

Docs

  • Move the docs to Blume, with feature guides for monitoring, commands, notifications, media, remote control and Discord, and a docs MCP server at https://system-bridge.timmo.dev/mcp.

Moved

  • Web client pages moved from /data/<module> to /<module>, and the old action and settings pages into their module's page, such as /settings/commands to /system#commands. The old addresses redirect.

Dependencies

  • Update github.com/go-vgo/robotgo to 1.3.7 (#4466).
  • Update effect to 4.0.6 (#4458).
  • Update Go to 1.27.3 (#4443, #4449).

Maintenance

  • Replace the logo with a bridge between two machines.
  • Speed up CI, and skip the Windows build when nothing affects it (#4440, #4441).
  • Update development tools: Bun, Node.js, uv, Ruff, Oxlint, wrangler and @effect/tsgo.
  • Update shared skills.

Full Changelog: 5.13.0...5.14.0

Don't miss a new system-bridge release

NewReleases is sending notifications on new releases.