PairDrop - Le partage de fichiers P2P en mode AirDrop dans votre navigateur
Aujourd’hui, j’aimerais vous parler d’un outil de partage de fichiers qui va vous plaire : PairDrop ! C’est comme AirDrop en version web et ça marche sur tous vos devices, quel que soit l’OS. Smartphone, laptop, PC fixe, tout y passe ! La seule condition c’est d’avoir un navigateur web moderne.
Avec PairDrop, vous pouvez envoyer des images, des docs, du texte, bref tout ce que vous voulez, en un clin d’œil. Ça utilise une connexion P2P (peer-to-peer pour les noobs) pour transférer directement les fichiers entre vos appareils sur le même réseau local. Et le top du top, c’est que vous pouvez aussi faire des transferts via Internet pour partager avec des potes à distance !
Pour ça, il suffit de rejoindre une room publique temporaire, et bam, tous les devices dans la même room peuvent s’échanger des fichiers. C’est méga pratique pour partager des trucs rapidement avec des gens, même s’ils sont pas sur le même réseau. Et bien sûr, ça marche nickel même si vous êtes sur un réseau chelou genre le Wi-Fi public, le réseau de votre boite, un VPN ou un truc comme iCloud Private Relay.
En plus de ça, PairDrop gère les connexions complexes comme un chef. Genre si vous voulez partager un truc depuis votre mobile en mode hotspot, pas de blème ! Les appareils en dehors de votre réseau local qui sont derrière un NAT sont auto-connectés via le serveur TURN de PairDrop. C’est de la magie ce truc !
Vous pouvez aussi appairer vos devices via un code à 6 chiffres ou un QR code, comme ça, vos appareils se retrouvent toujours grâce à des secrets partagés, peu importe le réseau. L’appairage est persistant en plus, donc même si vous fermez PairDrop, vous retrouverez vos devices en le rouvrant. Et bien sûr, vous pouvez éditer et dé-appairer vos devices en deux clics.
Les fichiers sont transférés après validation d’une demande. Et une fois le transfert terminé, si possible ils sont auto-downloadés direct. Si vous envoyez plusieurs fichiers, ils seront zippés bien comme il faut. Sur Android et iOS vous pouvez télécharger, partager ou sauvegarder dans la galerie via le menu “Partager”. Et quand vous envoyez plusieurs fichiers d’un coup, vous avez même un joli indicateur de progression global.
Bon et je vous ai pas encore parlé des autres fonctions vraiment pratiques que les devs ont ajoutées. Par exemple, vous pouvez envoyer des fichiers direct depuis le menu contextuel sur Ubuntu (avec Nautilus), sur Windows, ou depuis le menu “Partager” sur iOS et Android. Il y a même une interface en ligne de commande pour les vrais barbus ! Vous pouvez aussi changer votre nom d’affichage pour différencier facilement vos devices.
Les petits gars derrière PairDrop ont vraiment pensé à tout. Genre vous pouvez coller des fichiers/du texte et choisir le destinataire après et surtout, vos appareils se mettent plus en veille pendant un transfert. Vous aurez même un avertissement si vous fermez PairDrop par erreur pendant un transfert et y’a même une preview des vidéos et des audios !
C’est opensource en plus, donc vous pouvez aller voir le code sur GitHub et même contribuer si ça vous dit. Bon par contre, si vous voulez héberger votre propre instance de PairDrop, genre sur un Raspberry Pi, faudra potasser un peu la doc pour configurer vos serveurs STUN/TURN, mais c’est clairement à la portée de n’importe quel geek un peu motivé. Je vous ferais un tuto si vous voulez.
Niveau techno, on est sur du classique mais efficace : HTML5, JS ES6, CSS3, PWA, tout ça tout ça. Avec du WebRTC et des WebSockets pour la partie réseau. Un back en Node.js, parce que le JavaScript c’est la vie. Ils utilisent également IndexedDB pour la gestion du stockage, zip.js pour la compression des fichiers, cyrb53 pour le hashage, et NoSleep pour empêcher la mise en veille. Que des libs bien velues, approuvées par la communauté.
Allez, je vous laisse tester ça, vous me remercierez plus tard.