this post was submitted on 02 Jun 2025
-48 points (23.3% liked)

Selfhosted

46671 readers
312 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

A while ago, I posted about my plan to build a Lemmy client using the Plebbit protocol.

The response was, honestly, full of hate. I wasn’t expecting praise or anything, but I didn’t think people would react so negatively to the idea of something truly decentralized.

But here I am again. Still believing that Plebbit is the only real self-hosted social media protocol out there.

Let me explain why, in the most direct way I can:

– Plebbit is serverless. – There are no global admins. – It does not rely on any central server. – It can’t be censored or taken down. – It works like BitTorrent, but for social media. – No subreddit can go offline as long as one peer is online.

Every subreddit (called a "subplebbit") is its own world. Mods can ban users, remove posts, or run things how they want. But there’s no “head office.” Nothing above them.

And yes, Plebbit already has support for NSFW subs like /pol and others. It doesn’t need approval from anyone.

I see Plebbit as the Bitcoin of social media. Pure, peer-to-peer. No middlemen. No backdoors. No central kill switch.

It reminds me of what the internet was supposed to be—free, open, uncensorable.

Sadly, most devs I’ve met online don’t really understand peer-to-peer tech deeply. Some barely know cryptography. That’s okay, but it also makes real decentralization hard to appreciate.

If you’ve never read the Plebbit whitepaper,

https://github.com/plebbit/whitepaper

please do. It’s not just another protocol. It’s a whole different way of thinking about social interaction online.

I’m still planning to build that client. I don’t care if the first reactions were negative. I’m not doing this for approval. I’m doing it because I genuinely believe in it. But reviews matter too.

you are viewing a single comment's thread
view the rest of the comments
[–] savvywolf@pawb.social 1 points 3 days ago (3 children)

Imagine Bob is hosting a community about cat pictures, and I want to send him a picture of my cat to forward to other followers of that community.

How do I:

  • Locate bob given a name or some other ID
  • Verify that it is indeed Bob (and not someone pretending to be Bob)
  • Prove to Bob that I am indeed who I say I am
  • Send that cat picture without anyone in the middle snooping on it

All of this in a political environment that bans the sharing of cat pictures.

[–] rinse@lemmy.world -1 points 2 days ago (2 children)

Plebbit is text-only, images are not hosted on the protocol anywhere. Although you can embed a link to an image within your comments or posts. Eventually we will think of a design for p2p image hosting but it's not high priority right now, also it could be abused easily.

Locate bob given a name or some other ID At the moment we use key-value trackers similar to bittorrent trackers, Bob in this sceneario would post their content CID (content identifier, similar to hash) with addresses they can be reached through (quic, webtransport, websocket, https, etc).

If we assume Bob in this is a community with human name like cats, then the backend of Plebbit will resolve the text records of the domain to find its IPNS address, which then can be queries from trackers to find Bob, or anyone else who has the content of Bob's community.

Verify that it is indeed Bob (and not someone pretending to be Bob)

Plebbit uses IPFS for its backend, which is based on content-addressing. You always get what you ask for.

Prove to Bob that I am indeed who I say I am Each comment/vote/edit published by users to communities is signed with ed25519 keys.

Send that cat picture without anyone in the middle snooping on it

Depending how you connected to Bob, if you connect over a websocket or any encrypted protocol it will encrypted and nobody can snoop on you.

[–] savvywolf@pawb.social 1 points 2 days ago (1 children)

It still looks like you're relying on IP addresses, which means if you want to host a Plebbit server (sorry, "always on peer") you need one of the following:

  • Use a hosting provider, which is something you want to avoid according to your pitch.
  • Serve it from your own personal network under your own IP. Given that you're worried about censorship from even the DNS system, I imagine this is something you absolutely don't want to do.
[–] rinse@lemmy.world 1 points 2 days ago

if you want to host a Plebbit server

Did you mean a community (subplebbit) here? Or did you mean running your own client instance, like Seedit?

Use a hosting provider, which is something you want to avoid according to your pitch. Running a community is very cheap on terms of computing resources, it's on par with running a bittorrent client, you can probably run 50+ communities on a single raspberry pi or a $5 VPS. No need for DNS/TLS, and I suspect many people will opt to host communities themselves.

If you still wanna host it with someone else, you could have the address of the community be a blockchain name system tied to a wallet you own, and then give the hosting provider your database (which contains your IPNS private key). The hosting provider will receive and publish updates on your behalf, but in the case they went rogue, you can update the text records of your domain to point to a new IPNS you fully own.

So even this way, the hosting provider doesn't really have a lot of power over the community owner.

Serve it from your own personal network under your own IP. Given that you’re worried about censorship from even the DNS system, I imagine this is something you absolutely don’t want to do.

You can use relays/tor/vpn to obfuscate your real ip address. The peers in the network won't know necessarily that IP address is running these specific communities, just in the same way you don't know if a random bittorrent seeder is person who originally created the file and uploaded it.