Remix.run Logo
Peerweb: Decentralized website hosting via WebTorrent(peerweb.lol)
123 points by dtj1123 3 hours ago | 47 comments

https://github.com/omodaka9375/peerweb

xd1936 3 hours ago | parent | next [-]

Fun! I wish WebTorrent had caught on more. I've always thought it had a worthy place in the modern P2P conversation.

In 2020, I messed around with a PoC for what hosting and distributing Linux distros could look like using WebTorrent[1]. The protocol project as a whole has a lovely and brilliant design but has stayed mostly stagnant in recent years. There are only a couple of WebRTC-enabled torrent trackers that have remained active and stable.

1. https://github.com/leoherzog/LinuxExchange

r14c 2 hours ago | parent | next [-]

I think the issue has generally been that web torrent doesn't work enough like the real thing to do its job properly. There are huge bit torrent based streaming media networks out there, illicit, sure, but its a proven technology. If browsers had real torrent clients we would be having a very different conversation imo

I don't remember the web torrent issue numbers off the top of my head, but there are a number of long standing issues that seem blocked on webrtc limitations.

embedding-shape an hour ago | parent [-]

I think we still have the same blocker as we had back when WebTorrent first appeared; browsers cannot be real torrent clients and open connections without some initial routing for the discovery, and they cannot open bi-directional unordered connections between two browsers.

If we could say do peer discovery via Bluetooth, and open sockets directly from a browser page, we could in theory have local-first websites running in the browser, that does P2P connections straight between browsers and computers.

bluedino 23 minutes ago | parent | prev | next [-]

Was there ever a web-based Jigdo?

cranberryturkey 3 hours ago | parent | prev [-]

http://bittorrented.com

xd1936 2 hours ago | parent [-]

Oh wow

SLWW 2 hours ago | parent | prev | next [-]

I can't imagine that Peerweb has much in the way of stopping certain types of material from being uploaded.

b00ty4breakfast 4 minutes ago | parent | next [-]

you can't stop someone from verbally describing certain objectionable material, therefore we should regulate the medium thru which sound travels and suck up all the oxygen on the planet. it's the only way to save the children

estimator7292 31 minutes ago | parent | prev [-]

Take your censorship nonsense elsewhere and stop rooting for the fascists and literal Nazis

ericyd 16 minutes ago | parent [-]

This response feels disproportionate to the comment's comment

littlecranky67 41 minutes ago | parent | prev | next [-]

Cool. Some people complained about broken demos, I uploaded the mdwiki.info [1] website unaltered and seems to work fine [0]. MDwiki is a single .html file that fetches custom markdown via ajax relative to the html file and renders it via Javascript.

[0]: https://peerweb.lol/?orc=b549f37bb4519d1abd2952483610b8078e6...

[1]: https://dynalon.github.io/mdwiki/

sroerick 3 hours ago | parent | prev | next [-]

This is pretty interesting!

I think serving video is a particularly interesting use of Webtorrent. I think it would be good if you could add this as a front end to basically make sites DDOS proof. So you host like a regular site, but with a JS front end that hosts the site P2P the more traffic there is.

NewsaHackO 2 hours ago | parent | next [-]

I think it is very difficult (and dangerous to the host) to serve user-uploaded videos at scale, particularly from a moderation standpoint. The problem is even worse if everyone is anonymous. There is a reason YouTube has such a monopoly on personal video hosting. Maybe developments in AI moderation will make it more palatable in the future.

stanac 2 hours ago | parent | prev [-]

There is PeerTube for video content.

mcjiggerlog 3 hours ago | parent | prev | next [-]

This is cool - I actually worked on something similar way back in the day: https://github.com/tom-james-watson/wtp-ext. It avoided the need to have any kind of intermediary website entirely.

The cool thing was it worked at the browser level using experimental libdweb support, though that has unfortunately since been abandoned. You could literally load URLs like wtp://tomjwatson.com/blog directly in your browser.

kamranjon 2 hours ago | parent | prev | next [-]

I think one of the values of (what appears to be) AI generated projects like this is that they can make me aware of the underlying technology that I might not have heard about - for example WebTorrent: https://webtorrent.io/faq

Pretty cool! Not sure what this offers over WebTorrent itself, but I was happy to learn about its existence.

gnarbarian 2 hours ago | parent | prev | next [-]

love this. I've been working on something similar for months now

https://metaversejs.github.io/peercompute/

it's a gpgpu decentralized heterogeneous hpc p2p compute platform that runs in the browser

turtleyacht a month ago | parent | prev | next [-]

Github: https://github.com/omodaka9375/peerweb

dang 3 hours ago | parent [-]

Thanks! we'll put that link in the toptext.

rickcarlino an hour ago | parent | prev | next [-]

Similar project I vibe coded a few weeks ago: "Gnutella/Limewire but WebRTC".

https://github.com/RickCarlino/hazelhop

It works, though probably needs some cleanup and security review before being used seriously (thus no running public instance).

BrouteMinou 2 hours ago | parent | prev | next [-]

Nice, I clicked on the first demo, and I got stuck at connecting with peers.

I like the idea though.

journal an hour ago | parent | prev | next [-]

i wish stuff like this was more like double-click, agree, and use. they always make it complicated to where you're spending time trying to understand if you should continue to spend more time on this.

logicallee an hour ago | parent | prev | next [-]

I tried this, the functional "Functionality test page:" is stuck on "Loading peer web site... connecting to peers". I can't load any website from this.

https://imgur.com/gallery/loaidng-peerweb-site-uICLGhK

davidcollantes an hour ago | parent [-]

Yes, none work for me. They either don’t have peers, or the few ones are on a very slow network.

dpweb an hour ago | parent | prev | next [-]

Useless if it takes > 5 sec. to load a page

cyrusradfar 2 hours ago | parent | prev | next [-]

OT: Can someone vibe-code Geocities back to life?

800xl 2 hours ago | parent | next [-]

Check out neocities.org

cyrusradfar 19 minutes ago | parent [-]

you made my life. Thank you life long internet friend.

ipaddr 2 hours ago | parent | prev | next [-]

That would take forever. If you can get the domain I'll hand code it in perl.

awesome_dude an hour ago | parent [-]

<marquee><blink>Neat!!</blink></marquee>

AreShoesFeet000 2 hours ago | parent | prev [-]

give me the tokens.

Uptrenda an hour ago | parent | prev | next [-]

I feel like if it were combined with federated caching servers it would actually work. Then you would have persistence and the p2p part helps take load off popular content. There are now P2P databases that seem to operate with this. Combining the best of both worlds.

j45 3 hours ago | parent | prev | next [-]

In its own reimagined way from what’s possible in 2026, this could kick off a new kind of geocities.

dcreater 2 hours ago | parent | prev | next [-]

Good, important idea. Unfortunately bad, low effort vibe coded execution

dana321 2 hours ago | parent | prev | next [-]

None of the demo sites work for me.

Probably needs more testing and debugging.

elbci a month ago | parent | prev [-]

I don't get it, I upload my files to your site, then I send my friends links to your site? How is this not a single point of failure?

dang 3 hours ago | parent | next [-]

[sorry for the weird timestamps - the OP was submitted a while ago and I just re-upped it.]

logicallee an hour ago | parent [-]

did the test sites work for you when you tried it? because none worked for me, and for at least two other commenters here.

https://news.ycombinator.com/item?id=46830158

https://news.ycombinator.com/item?id=46830183

toomuchtodo 3 hours ago | parent | prev | next [-]

IPFS [1] requires a gateway unfortunately (whether remote or running locally). If you can use content idents that are supported by web primitives, you get the distributed nature without IPFS scaffolding required. Content is versioned by hash, although I haven't looked to see if mutable torrents [2] [3] are used in this implementation. Searching via distributed hash tables for torrent metadata, cryptographically signed by the publisher, remains as a requirement imho.

Bittorrent, in my experience, "just works," whether you're relying on a torrent server or a magnet link to join a swarm and retrieve data. So, this is an interesting experiment in the IPFS, torrent, filecoin distributed content space.

[1] https://ipfs.tech/

[2] https://news.ycombinator.com/item?id=29920271

[3] https://www.bittorrent.org/beps/bep_0046.html

dtj1123 a month ago | parent | prev [-]

This isn't my site, nor do I have any opinions on the implementation here. I do however find the idea of serving web pages via torrent interesting.

elbci a month ago | parent [-]

p2p storage as in torrent or IPFS or whatever is the part that we kinda' solved already. Serving/searching/addressing without the (centralized) DNS is still missing for a (urgently needed) p2p censorship resistant internet. Unfortunately this guy just uses some buzzwords to offer nothing new - why would I share links to that site instead of sharing torrent magnet links?

recursivegirth 2 hours ago | parent | next [-]

Thinking about this a little bit... could we use a blockchain ledger as an authoritative source for DNS records?

User's can publish their DNS + pub key to the append-only blockchain, signed with their private key.

Use a torrent file to connect to an initial tracker to download the blockchain.

Once the blockchain is downloaded, every computer would have a full copy of the DNS database and could use that for discoverability.

I have no experience with blockchains or building trackers, so maybe this is a dumb idea.

theendisney 2 hours ago | parent | next [-]

Its been tried/done but attracted the same audience of investors looking to make a quick buck as opposed to looking to actually make it work.

From what i've seen you need some minimum percentage of makeithappen-ers amoung those interested in a project.

It seems the guy running the extension just left. With minimum influence on the value.

https://addons.mozilla.org/en-US/firefox/addon/b-dns/

https://www.coinbase.com/en-nl/price/namecoin

soulofmischief an hour ago | parent | prev [-]

Look into IPFS and ENS.

sroerick 3 hours ago | parent | prev | next [-]

This is a great point.

One issue I've had with IPFS is that there's nothing baked into the protocol to maintain peer health, which really limits the ability to keep the swarm connected and healthy.

theendisney an hour ago | parent [-]

I use to add webseeds but clients seem to love just downloading it from there rather than from my conventional seeding.

Some new ideas are needed in this space.

dtj1123 24 days ago | parent | prev [-]

You make a good point.