- WebTorrent-आधारित peer-to-peer नेटवर्क का उपयोग करके वेबसाइटों को केंद्रीय सर्वर के बिना वितरित करने वाली प्रणाली
- उपयोगकर्ता वेबसाइट फ़ोल्डर को drag and drop करके अपलोड कर सकते हैं और एक यूनिक PeerWeb लिंक के ज़रिए साझा कर सकते हैं
- ब्राउज़र टैब खुला रखने या desktop client का उपयोग करने पर लगातार होस्टिंग बनाए रखी जा सकती है
- DOMPurify-आधारित security filtering, sandbox execution, smart caching आदि से सुरक्षा और गति बेहतर होती है
- censorship resistance, cost reduction, और global distribution से युक्त विकेंद्रीकृत web hosting मॉडल के रूप में ध्यान आकर्षित कर रहा है
PeerWeb परिचय
- PeerWeb एक ऐसी प्रणाली है जो WebTorrent तकनीक का उपयोग करके वेबसाइटों को केंद्रीय सर्वर के बिना होस्ट करती है
- वेबसाइटें peer-to-peer नेटवर्क के ज़रिए वितरित रूप से स्टोर होती हैं, जिससे censorship resistance और always-on availability मिलती है
- उपयोगकर्ता HTML, CSS, JavaScript आदि से बनी static websites अपलोड कर सकते हैं
- अपलोड के बाद बनने वाले unique hash और PeerWeb URL के ज़रिए कोई भी साइट तक पहुँच सकता है
अपलोड और होस्टिंग का तरीका
- वेबसाइट फ़ोल्डर को drag and drop करने पर वह अपने-आप प्रोसेस होकर अपलोड हो जाता है
- अपलोड के बाद hash और PeerWeb URL बनते हैं, जिन्हें तुरंत साझा किया जा सकता है
- ब्राउज़र टैब खुला रहने पर वही टैब hosting node की भूमिका निभाता है
- टैब बंद न करने पर दूसरे उपयोगकर्ता साइट तक पहुँच सकते हैं
- desktop client (Windows, macOS, Linux) का उपयोग करने पर टैब खोले बिना भी continuous hosting संभव है
उपयोग का तरीका
- ① HTML/CSS/JS से static site बनाएं
- ② फ़ोल्डर को PeerWeb पेज पर drag and drop करके अपलोड करें
- ③ बना हुआ unique link साझा करें
- ④ ब्राउज़र टैब खुला रखें या client चलाकर होस्टिंग जारी रखें
मौजूदा साइट इम्पोर्ट करना
- मौजूदा वेबसाइट लाने के लिए torrent hash दर्ज करें
- PeerWeb अपने-आप magnet link prefix और tracker जानकारी जोड़ देता है
- उदाहरण डेमो के रूप में SomaFM, शतरंज गेम, text editor ऐप आदि उपलब्ध हैं
डेवलपर फीचर्स
- URL में
&debug=trueजोड़ने पर debug mode चालू हो जाता है और प्रगति का विस्तृत प्रदर्शन मिलता है - advanced torrent generator के ज़रिए सीधे torrent file बनाई जा सकती है
- cache reset और advanced settings फीचर्स भी दिए गए हैं
स्मार्ट कैशिंग
- विज़िट की गई साइटों को IndexedDB में स्टोर करके तुरंत reload का समर्थन
- cache 7 दिनों बाद अपने-आप हट जाती है
- सिर्फ DOMPurify से साफ़ किया गया content ही स्टोर होता है
- offline स्थिति में भी cached sites तक पहुँचा जा सकता है
सुरक्षा फीचर्स
- DOMPurify integration के ज़रिए सभी HTML को साफ़ किया जाता है, जिससे XSS attacks रोके जाते हैं
- खतरनाक tags और attributes हटाना, sandbox iframe execution, और resource verification किया जाता है
- सभी फ़ाइलें isolated environment में चलती हैं, जिससे सुरक्षा और मजबूत होती है
साइट आवश्यकताएँ
- root या subfolder में index.html होना अनिवार्य है
- सभी resources में relative paths का उपयोग होना चाहिए
- केवल static content की अनुमति है (HTML, CSS, JS, images, fonts आदि)
- responsive design की सिफारिश की जाती है
- content अपने-आप security sanitization से गुज़रता है
मुख्य फायदे
- censorship resistance: केंद्रीय सर्वर न होने से ब्लॉक करना मुश्किल
- cost reduction: होस्टिंग शुल्क नहीं
- global distribution: दुनिया भर के peers के बीच अपने-आप वितरण
- always-on availability: जब तक peers online हैं, पहुँच संभव
- security: sandbox execution और XSS protection
- fast loading: smart caching से तुरंत दोबारा विज़िट संभव
- simple URL structure: सिर्फ torrent hash से पहुँच संभव
- offline accessibility: cached sites इंटरनेट के बिना भी काम करती हैं
निष्कर्ष
- PeerWeb एक WebTorrent-आधारित विकेंद्रीकृत web hosting platform है,
जो censorship resistance, cost efficiency, और security को एक साथ देने वाला वेब वितरण का नया तरीका है
3 टिप्पणियां
क्या यह IPFS नहीं है??
मैंने इसका इस्तेमाल करके वीडियो स्ट्रीमिंग वाली एक चीज़ बनाई थी। इसका असर दिखा था।
Hacker News प्रतिक्रियाएँ
2020 में मैंने Linux distributions को WebTorrent से host और distribute करने का एक PoC बनाया था, और protocol खुद वाकई बहुत बढ़िया design है, फिर भी हाल के वर्षों में यह लगभग ठहर-सा गया है
WebRTC-आधारित tracker भी अब बस कुछ ही स्थिर रूप से बचे हैं
संबंधित project LinuxExchange में देखा जा सकता है
अगर browser सचमुच torrent client को support करते, तो दुनिया बिल्कुल अलग होती
WebRTC की पाबंदियों की वजह से पुराने issues अब तक हल नहीं हो पाए हैं
इसमें libdweb का experimental feature इस्तेमाल किया गया था, लेकिन अब वह हटा दिया गया है
उस समय
wtp://tomjwatson.com/blogजैसे URL सीधे browser में खोले जा सकते थेउदाहरण के लिए, मैंने WebTorrent FAQ देखकर नई बातें सीखीं
WebTorrent के मुकाबले इसका फर्क क्या है, यह तो नहीं पता, लेकिन सिर्फ इसका होना ही दिलचस्प है
मौजूदा torrent client इस्तेमाल करने की तुलना में इसका फायदा क्या है, यह भी साफ़ नहीं है
bugs कम हो जाएँ, तो शायद कभी उपयोगी बन सके
मैं distributed anti-abuse protocol, popular files को प्राथमिकता से distribute करना, upload के दौरान ही तुरंत share हो सकने वाला streaming UGC API, site URL के साथ natural integration, और latency के आधार पर CDN पर automatic fallback जैसी चीज़ें design कर रहा हूँ
पहले इसे बंद कर दिया था, लेकिन जल्द फिर शुरू करने का इरादा है
अभी यह “Connecting to peers…” पर अटक जाता है, इसलिए काम नहीं करता
Claude से बने projects में मैं अक्सर ऐसा ही palette देखता हूँ
Lovable का frontend भी कुछ ऐसा ही feel देता है
एक ही prompt से बार-बार generate करने पर नतीजे अक्सर मिलते-जुलते हो जाते हैं
यही ‘vibecoded’ style की एकरसता का एक कारण हो सकता है
मैं भी जब AI इस्तेमाल करता हूँ, तो हमेशा ऐसे हिस्से edit करता हूँ
सिर्फ iframe sandbox इस्तेमाल करना ही काफ़ी होना चाहिए, और आदर्श रूप से torrent hash को subdomain की तरह इस्तेमाल करके same-origin policy का फायदा उठाना बेहतर होगा
अगर इसमें JS frontend जोड़कर site को P2P पर host किया जाए, तो traffic बढ़ने पर DDoS defense का असर भी मिल सकता है
anonymity जितनी अधिक होगी, समस्या उतनी बढ़ेगी, और YouTube के monopolize करने का एक कारण यही है
AI-आधारित censorship technology बेहतर हो जाए, तो शायद स्थिति कुछ सुधरे
इसका अब भी maintained fork zeronet-conservancy में है
MDwiki एक single HTML file है, जो AJAX से markdown लाती है और JS से render करती है
नतीजा इस लिंक पर देखा जा सकता है