- Système de distribution de sites web sans serveur central utilisant un réseau pair à pair basé sur WebTorrent
- Les utilisateurs peuvent téléverser un dossier de site web par glisser-déposer et le partager via un lien PeerWeb unique
- En gardant un onglet du navigateur ouvert ou en utilisant un client desktop, l’hébergement reste actif en continu
- Sécurité et performances renforcées grâce au filtrage de sécurité basé sur DOMPurify, à l’exécution en sandbox et au smart caching
- Un modèle d’hébergement web décentralisé remarqué pour sa résistance à la censure, sa réduction des coûts et sa distribution mondiale
Présentation de PeerWeb
- PeerWeb est un système d’hébergement de sites web sans serveur central utilisant la technologie WebTorrent
- Les sites web sont stockés de manière distribuée via un réseau pair à pair, ce qui assure une résistance à la censure et une disponibilité permanente
- Les utilisateurs peuvent téléverser des sites web statiques composés de HTML, CSS, JavaScript, etc.
- Après le téléversement, tout le monde peut y accéder via un hash unique et une URL PeerWeb générés
Téléversement et mode d’hébergement
- Il suffit de glisser-déposer un dossier de site web pour qu’il soit traité automatiquement et téléversé
- Après le téléversement, un hash et une URL PeerWeb sont générés et peuvent être partagés immédiatement
- Tant que l’onglet du navigateur reste ouvert, cet onglet joue le rôle de nœud d’hébergement
- Si l’onglet reste ouvert, d’autres utilisateurs peuvent accéder au site
- Avec le client desktop (Windows, macOS, Linux), il est possible d’assurer un hébergement continu sans laisser d’onglet ouvert
Mode d’emploi
- ① Créer un site statique en HTML/CSS/JS
- ② Glisser-déposer le dossier sur la page PeerWeb pour le téléverser
- ③ Partager le lien unique généré
- ④ Maintenir l’onglet du navigateur ouvert ou lancer le client pour poursuivre l’hébergement
Importer un site existant
- Pour importer un site web existant, il faut saisir le hash torrent
- PeerWeb ajoute automatiquement le préfixe de lien magnet et les informations de tracker
- Exemples de démos disponibles : SomaFM, jeu d’échecs, application d’éditeur de texte
Fonctionnalités pour les développeurs
- En ajoutant
&debug=trueà l’URL, on passe en mode debug pour afficher l’avancement en détail - Le générateur de torrents avancé permet de créer directement des fichiers torrent
- Fonctions de réinitialisation du cache et de paramètres avancés incluses
Smart caching
- Les sites visités sont enregistrés dans IndexedDB pour permettre un rechargement immédiat
- Le cache est supprimé automatiquement après 7 jours
- Seuls les contenus nettoyés par DOMPurify sont stockés
- Même hors ligne, il est possible d’accéder aux sites mis en cache
Fonctions de sécurité
- L’intégration de DOMPurify nettoie tout le HTML afin de bloquer les attaques XSS
- Suppression des balises et attributs dangereux, exécution dans des iframe sandboxées et vérification des ressources
- Tous les fichiers s’exécutent dans un environnement isolé, ce qui renforce la sécurité
Exigences pour les sites
- Présence obligatoire de index.html à la racine ou dans un sous-dossier
- Toutes les ressources doivent utiliser des chemins relatifs
- Seul le contenu statique est autorisé (HTML, CSS, JS, images, polices, etc.)
- Design responsive recommandé
- Le contenu est automatiquement nettoyé pour des raisons de sécurité
Principaux avantages
- Résistance à la censure : aucun serveur central, donc pas de blocage possible
- Réduction des coûts : aucun frais d’hébergement
- Distribution mondiale : diffusion automatique entre pairs à l’échelle globale
- Disponibilité permanente : accessible tant que des pairs sont en ligne
- Sécurité : exécution en sandbox et protection XSS
- Chargement rapide : retour instantané grâce au smart caching
- Structure d’URL simple : accès possible avec le seul hash torrent
- Accessibilité hors ligne : les sites mis en cache fonctionnent sans Internet
Conclusion
- PeerWeb est une plateforme d’hébergement web décentralisée basée sur WebTorrent qui propose une nouvelle manière de distribuer le web en combinant résistance à la censure, efficacité économique et sécurité
3 commentaires
N'est-ce pas ce qu'est IPFS ??
J’avais déjà créé quelque chose pour faire du streaming vidéo avec ça. C’était assez efficace.
Commentaires sur Hacker News
En 2020, j’ai créé une preuve de concept pour héberger et distribuer une distribution Linux via WebTorrent, et même si le protocole lui-même est vraiment très bien conçu, il est quasiment à l’arrêt ces derniers temps
Il ne reste aussi que quelques trackers basés sur WebRTC de manière stable
Le projet associé est visible sur LinuxExchange
Si les navigateurs prenaient en charge un véritable client torrent, ce serait un tout autre monde
À cause des contraintes de WebRTC, d’anciens problèmes n’ont toujours pas pu être résolus
Il utilisait une fonctionnalité expérimentale de libdweb, mais elle a maintenant été abandonnée
À l’époque, on pouvait ouvrir directement des URL comme
wtp://tomjwatson.com/blogdans le navigateurPar exemple, j’ai appris quelque chose de nouveau en lisant la FAQ WebTorrent
Je ne sais pas bien ce qui le différencie de WebTorrent lui-même, mais son existence est déjà intéressante
Je ne vois pas bien quel avantage il y a par rapport à l’utilisation d’un client torrent existant
Peut-être que cela deviendra utilisable un jour, quand il y aura moins de bugs
Je conçois notamment un protocole anti-abus distribué, une distribution prioritaire des fichiers populaires, une API UGC en streaming permettant le partage immédiat pendant l’envoi, une intégration naturelle avec les URL des sites, ainsi qu’un basculement automatique vers un CDN selon la latence
Le projet avait été interrompu, mais je compte le reprendre bientôt
Pour l’instant, cela reste bloqué sur « Connecting to peers… » et ne fonctionne pas
Je vois souvent des projets faits avec Claude utiliser une palette similaire
Le frontend de Lovable donne une impression semblable
Quand on régénère plusieurs fois avec le même prompt, les résultats ont tendance à se ressembler
C’est l’une des causes de la monotonie du style « vibecoded »
Quand j’utilise moi aussi l’IA, je corrige toujours ce genre de chose
Un simple iframe sandbox suffirait, et idéalement il vaudrait mieux utiliser le hash du torrent comme sous-domaine afin de tirer parti de la politique same-origin
Si on ajoute un frontend JS pour héberger le site en P2P, on pourrait même obtenir un effet de défense contre les DDoS à mesure que le trafic augmente
Plus l’anonymat est élevé, plus c’est problématique, et c’est aussi pour cela que YouTube est en situation de monopole
Cela pourrait s’améliorer un peu à mesure que les technologies de censure basées sur l’IA progressent
Il existe encore un fork maintenu sur zeronet-conservancy
MDwiki est un unique fichier HTML qui charge du Markdown en AJAX puis le rend en JS
Le résultat est visible à ce lien