Launcher¶
The Splintertree launcher is a Tauri 2 shell that hosts
the same Quasar / Vue 3 SPA the public web portal uses, restricted to a
launcher-specific layout. The native side handles Wow.exe spawning, the
client install / update pipeline, settings persistence under
~/.config/splintertree/launcher.toml, and per-game addon management.
The launcher is the user's primary entry point: account management, friends & chat, game database, optional addons, and (when enabled) the shop all live in the same window so a player rarely needs the browser portal at all.
Why Tauri¶
Tauri keeps the install footprint small (~30 MB binary) and reuses every line
of UI code that ships in the browser portal. The native commands surface as
#[tauri::command] Rust functions in splintertree-launcher/src/commands.rs;
the Vue side calls them via invoke('command_name', { … }). The split lets
designers iterate on the SPA without touching the binary, while the binary
owns the platform integrations (Wine spawn, file-system writes, manifest
verification, patch sync).
Wire format with the server¶
- Web-facing flows talk to
splintertree-web-apiover plain HTTPS — login, account, news, shop, social, addons. - The client install/update pipeline pulls from the same web-api but with
range-resumable HTTP
GETs so a 15-20 GB tree resumes from where it died. - Realmlist + auth handshake is unchanged AzerothCore SRP6 wire format,
served by
splintertree-authon TCP port 3724. The launcher writesrealmlist.wtf(root + Data/ + every locale) before spawning Wow.exe so the in-game login screen connects to the right host.
Read next¶
- Layout & navigation — what every tab in the toolbar does.
- Account & security — Splintertag, 2FA, data export, deletion.
- Social & guild chat — friends, DMs, guild bridge, presence.
- Game database — armory, items, quests, NPCs from the launcher.
- Addons — per-game optional addons: install, update, remove.
- Shop — the in-launcher storefront.