How goslynkllc/goslynk-booster works
Goslynk Booster selectively tunnels game traffic through nearby UDP relays to reduce latency and packet loss. A player signs in, chooses a game and relay (or automatic selection), and presses Boost; the client loads the game’s regions, establishes relay roads, installs routes, and forwards matching packets through the tunnel. The backend also supplies account, relay, redemption, and admin capabilities. The README documents relay selection, multipath, profiles, and updates; sampled source confirms key UI, daemon, tunnel, relay, and API responsibilities, but not every Tauri command or relay-selection detail.
Main entry points: App.jsx App UI · src/lib.rs Tauri commands · src/lib.rs Tunnel engine · app.js Accounts API
Components 20
Player application
- App UI
client-rs/gpb-app/src/App.jsx - Player screens
client-rs/gpb-app/src/screens/HomeScreen.jsx - Admin screens
client-rs/gpb-app/src/screens/AdminScreen.jsx - API client
client-rs/gpb-app/src/api.js - Tauri commands
client-rs/gpb-app/src-tauri/src/lib.rs
Client tunnel
- Game profiles
client-rs/crates/gpb-profile/src/lib.rs - Tunnel daemon
client-rs/crates/gpb-daemon/src/main.rs - Tunnel engine
client-rs/crates/gpb-tunnel/src/lib.rs - Wire protocol
client-rs/crates/gpb-protocol/src/lib.rs - TUN and routes
client-rs/crates/gpb-net/src/lib.rs
Accounts service
- Accounts API
backend/server/src/app.js - Account database
backend/server/src/db.js - API runtime
backend/server/src/server.js - Relay registry
backend/server/src/app.js
Relay data plane
- Relay process
relay/cmd/relayd/main.go - UDP relay
relay/internal/server/server.go - Relay TUN
relay/internal/tun/tun_linux.go
External systems
- Game servers
- Update service
Other components
- Player
Connections 24
- Player → App UI: uses
- App UI → Player screens: renders
- App UI → API client: requests
- App UI → Tauri commands: controls
- App UI → Admin screens: opens admin
- App UI → Update service: checks updates
- API client → Accounts API: HTTP requests
- API runtime → Accounts API: hosts
- API runtime → Account database: migrates
- Accounts API → Account database: queries and writes
- Accounts API → Relay registry: administers relays
- Relay registry → Account database: stores relay data
- Tauri commands → Game profiles: loads profiles
- Tauri commands → TUN and routes: configures routes
- Tauri commands → Tunnel engine: starts tunnel
- Tunnel daemon → Game profiles: loads profile
- Tunnel daemon → TUN and routes: opens TUN and routes
- Tunnel daemon → Tunnel engine: starts pumps
- Tunnel engine → Wire protocol: encodes packets
- Tunnel engine → TUN and routes: reads and writes
- Relay process → UDP relay: starts server
- UDP relay → Wire protocol: processes packets
- UDP relay → Relay TUN: forwards IP packets
- Relay TUN → Game servers: routes game traffic