How timmo001/system-bridge works
System Bridge is a cross-platform system monitoring and control service, with a web client and API/WebSocket access. Its main workflow is: collect platform data into named modules, expose it to authenticated clients, and route control requests to system actions. The README also identifies MCP, Home Assistant integration, discovery, tray controls, and an optional Omarchy plugin. The graph reflects sampled wiring where available; some backend routes and integrations are represented at their documented subsystem boundary because their implementation was not sampled.
Main entry points: data.go Data registry · main.go Application runtime · backend.go Backend server · websocket.go WebSocket service
Components 22
Runtime
- Application runtime
main.go - Settings and token
settings/settings.go - System tray
tray/tray.go
System data
- Data registry
data/data.go - Platform data modules
data/module - Module data types
types/module.go - Update event bus
bus/bus.go
Client interfaces
- Backend server
backend/backend.go - HTTP API
backend/http/api.go - WebSocket service
backend/websocket/websocket.go - MCP service
backend/mcp/server.go - Network discovery
discovery/discovery.go
Controls
- Event router
event/event.go - Request handlers
event/handler/handler.go - System actions
utils/handlers
Web client
- Web application
web-client/src/app.ts - App state provider
web-client/src/components/app-provider.ts - WebSocket controller
web-client/src/controllers/websocket-controller.ts - Client pages
web-client/src/pages
Other components
- Operator / client
- Home Assistant connector
- Omarchy bar plugin
Connections 27
- Application runtime → Settings and token: loads configuration
- Application runtime → Data registry: creates registry
- Application runtime → Backend server: starts service
- Application runtime → System tray: starts tray
- Data registry → Platform data modules: registers and updates
- Data registry → Module data types: stores module data
- Data registry → Update event bus: publishes updates
- Backend server → HTTP API: serves API
- Backend server → WebSocket service: serves socket
- Backend server → MCP service: serves MCP
- WebSocket service → Update event bus: receives updates
- HTTP API → Event router: routes requests
- WebSocket service → Event router: dispatches messages
- MCP service → Data registry: reads module data
- MCP service → Event router: dispatches controls
- Event router → Request handlers: dispatches events
- Request handlers → Data registry: requests data
- Request handlers → System actions: invokes actions
- Application runtime → Network discovery: starts discovery
- Operator / client → Web application: uses
- Web application → App state provider: renders within
- App state provider → WebSocket controller: manages connection
- WebSocket controller → WebSocket service: sends requests
- Web application → Client pages: routes to
- Home Assistant connector → HTTP API: connects through API
- Home Assistant connector → WebSocket service: connects through socket
- Omarchy bar plugin → Backend server: optional integration