Contexte et performances observées
Un clip partagé par le co‑fondateur de Discord montre que le nouveau client écrit en Rust charge la liste d'amis avant même que l'application Electron ne dépasse son écran de démarrage. Les deux clients sont lancés à froid, le client Rust apparaît en 0,9 s alors que l'Electron met environ 5 s à afficher son interface. Le gestionnaire de tâches indique une consommation de 290,2 Mo de RAM avec deux comptes connectés, soit ~70 % de moins que la consommation habituelle de l'Electron (1‑2 Go).
Architecture du nouveau client
Discord a abandonné Electron au profit de GPUI, un framework UI hybride immédiat‑et‑retenu accéléré par le GPU, développé par les créateurs de l'éditeur Zed. GPUI dessine l’interface directement sur le GPU sans passer par du HTML, contrairement à Tauri qui utilise le WebView du système. Le code logique reste en Rust, un langage sans ramasse‑miettes qui gère la mémoire de façon déterministe, ce qui réduit les pics de consommation et les pauses liées au GC. L’ancienne pile Electron, héritée de Chromium, maintenait un processus principal et un processus de rendu par fenêtre, augmentant l’empreinte mémoire.
Analyse des impacts techniques
Le passage à GPUI élimine l’écran « Starting » qui, selon les utilisateurs, ajoutait 5‑10 s à chaque lancement. Discord effectue désormais les mises à jour en arrière‑plan, sans recourir au Microsoft Store ou à Windows Update Orchestration Platform. La mise à jour d’Electron vers la version 42, annoncée en septembre, avait réduit l’utilisation CPU de ≈ 17 % mais avait augmenté la consommation mémoire médiane de ≈ 4 %. En comparaison, le client Rust reste sous 300 Mo même avec deux comptes actifs, alors que l’ancien client atteint régulièrement 1‑2 Go en veille et a été testé jusqu’à 4 Go avant de redémarrer automatiquement.
Portabilité et évolution future
Le nouveau client supporte jusqu’à cinq comptes et permet d’en garder deux simultanément sans redémarrage, grâce à un commutateur de comptes intégré. Sur mobile, Discord abandonne React Native au profit d’interfaces natives partageant le même code Rust, tandis que la version web migre la logique vers WebAssembly, conservant l’HTML/CSS d’affichage mais exécutant le cœur en Rust. Cette approche unifie le code entre Windows, macOS, Linux et les plateformes mobiles, tout en conservant la compatibilité avec les embeds YouTube via le webview système.
Sécurité et perspectives
Le token d’authentification est stocké dans le gestionnaire d’identifiants Windows (Credential Manager), renforçant la protection des secrets. Discord prévoit un test privé du client Rust avant un déploiement public, afin de valider stabilité et sécurité. Les développeurs de GPUI ont déjà reçu des patches de Discord, qui envisagent de contribuer en amont à la communauté open‑source. Si le client Rust confirme ces gains de performance, il pourrait inciter d’autres applications Windows 11 à abandonner Electron au profit de solutions natives plus légères.