xSend Logo xSend

Réécrire les Fondations : Pourquoi nous avons créé une alternative à LocalSend en Rust

Grands utilisateurs d'outils formidables comme LocalSend et Snapdrop, nous avons finalement choisi de construire xSend à partir de zéro avec Rust. Explorez le bond générationnel des performances.

Sans aucun doute, des projets tels que LocalSend sont phénoménaux. En superposant une interface soignée à la recherche réseau, ils épargnent la souffrance de transférer des médias entre iOS, Windows et Android.

Pourtant, en tant que professionnels déplaçant des répertoires massifs, essayant d’échapper à des nœuds complexes (NAT) ou exigeant une ressource mémoire nulle depuis notre batterie, nous faisons face à un mur de briques face aux applications haut niveau.

Voici pourquoi nous avons rebâti la tour : xSend se hisse sur des normes Rust de base et affronte ces trois barrières sans patchs inutiles.

1. Combler l’Abîme du Ramasse-Miettes (GC) : Dart vs. Rust

LocalSend se dresse sur Flutter/Dart. Or, le Garbage Collector (GC - Ramasse-Miettes) s’est trouvé être l’asphyxie d’un trafic hyper dense en requêtes d’entrée (I/O). La VM réclame un grand pourcentage de votre RAM sous contrainte forte.

Le remède exclusif de Rust élimine sans effort la gestion via Ownership and Lifetimes. xSend agit dès le stade de la compilation — éliminant de manière drastique les pauses momentanées « Stop-the-World ».

2. Briser le Bac à sable : WebRTC pur face aux Réseaux Natifs (Native)

L’usage pur WebRTC depuis une page (tel Snapdrop) condamne d’emblée la transmission hors-champ (background) des que votre smartphone s’éteint ou passe à un autre onglet. Sans compter la lenteur occasionnée par l’API navigateur (“File API”).

À l’inverse, l’approche de xSend emploie un “cœur natif partout” en DLL, commandant vos droits système TCP et le pare-feu du nouveau tunnel QUIC, conférant un boost de 3x à 5x contre toute page web !

3. L’Auto-Route

Pour empêcher le mur sourd entre VLANs de l’entreprise où mDNS tombe dans le néant, nos trois voies de triage sont ingénieuses (Tier 1 LAN natif / Tier 2 Percement UDP en QUIC / Tier 3 Relais Sécurisé TURN). Vous mettez 6 chiffres — le système exécute seul ses enquêtes souterraines pour ne jamais cesser ou échouer l’envoi.

Même si le Frontend restera régit par React pour sa finesse visuelle, l’épine dorsale vasculaire de l’opération demeurait en crise sans un modèle de “Concurrency” inépuisable offert uniquement chez Rust.