Discord baut seine Clients auf Rust um und wirft sowohl Electron als auch React Native raus, wie CTO Stanislav Vishnevskiy am Mittwoch auf X mitteilte.

Der Kern der Desktop-App wechselt zu Rust, die Oberfläche zu GPUI – dem GPU-beschleunigten UI-Framework, das Zed Industries für seinen Code-Editor gebaut hat. Mobil bleiben die nativen Oberflächen von Android und iOS, teilen sich aber künftig dieselbe Anwendungslogik in Rust; React Native wird vollständig abgeschafft. Es ist die größte Architekturänderung der Chat-Plattform seit ihrem Start, und sie kehrt den Branchenstandard um, für den Desktop kurzerhand eine Web-App zu verpacken.

Das Motiv ist der Arbeitsspeicher. Electron bringt Chromium und Node.js mit, und der Discord-Client ist zum Inbegriff einer untätigen Anwendung geworden, die ein Gigabyte frisst. Die Rust-Basis soll unter 300 MB bleiben – eine Zahl, die Discord noch nicht öffentlich überprüfen lässt, denn der zirkulierende Build ist eine frühe Windows-11-Vorschau, die als Test gekennzeichnet ist.

Discord ist darin nicht neu. Das Unternehmen arbeitet seit 2018 mit Rust und hat 2020 seinen Dienst zum Lesen von Nachrichten von Go nach Rust portiert, gezielt um Latenzspitzen durch die Garbage Collection loszuwerden; das Speichermodell von Rust passte zudem gut zu Echtzeit-Audio. Neu ist, Desktop und Mobil auf einen Kern zu vereinheitlichen, statt zwei Stapel zu pflegen.

GPUI ist die Wette mit dem größten Risiko. Anders als Tauri, das die Webview behält und nur die Hülle austauscht, zeichnet GPUI nativ: Metal unter macOS, DirectX 11 unter Windows, wgpu unter Linux. Zed hat im April Version 1.0 erreicht, GPUI selbst aber nicht, und seine API hat sich zwischen den Releases als inkompatibel erwiesen. Für eingebettete Inhalte wie YouTube-Player und Activities behält Discord außerdem System-Webviews – der Client wird also eine Weile zwei Rendering-Pfade fahren.

Für Entwickler ist der interessante Teil nicht die Framework-Wahl, sondern die Form des Teams. Discord pflegt nun einen UI-Toolkit, der ihm nicht gehört, auf einem Reifegrad, den dessen Eigentümer nicht als stabil erklärt hat, und liefert dabei an Hunderte Millionen Installationen auf drei Betriebssystemen aus. Zeds Framework bekommt unfreiwillig seinen bislang größten Produktionstest.

Ob sich der Umbau beim RAM auszahlt, hängt an Zahlen, die außerhalb von Discord noch niemand gemessen hat. Vishnevskiyys Angabe ist ein Ziel, kein Ergebnis.