this post was submitted on 08 Apr 2024
3 points (80.0% liked)

decentralized

1972 readers
1 users here now

This is a community for the discussion and news about the decentralized web, software, privacy, and related topics.

Rules: be a good human being

founded 4 years ago
MODERATORS
 

The link goes to a related post on another community so I don't have to duplicate it here.

Basically, I'd like to discuss tech options for a Reddit/Lemmy alternative. Here's what I've found:

  • Iroh - early days alternative to IPFS promising improved performance and application control
  • Appleseed - old-ish proposal for a distributed trust system - I'm thinking of using it for moderation (i.e. if you block/report similarly to someone else, that will get automated; you could also explicitly trust someone else [e.g. a CP-detector bot])
  • TrustNet - builds on Appleseed - still reading through the paper to know what it adds over Appleseed, if anything

Goals:

  • distributed storage - worried the fediverse will scale poorly (become too expensive)
  • distributed moderation - power-hungry mods suck
  • local-first - cache/host stuff you care about, reserve some space for preservation

Non-goals:

  • make money - it's a hobby for now, everything would be FOSS
  • image/video hosting - legal issues if you get random CP or something
  • preserve all data - I'd rather sacrifice older/less popular content than lose users - community can run caching servers
  • fediverse compat - P2P makes that difficult, but a bridge should be feasible

Thoughts? What am I missing?

Also, would anyone like me to post updates? It'll mostly be stuff from my research, if I post code, it won't be for a while (I have limited time).

top 2 comments
sorted by: hot top controversial new old
[โ€“] totally_notAcat@lemmy.blahaj.zone 2 points 5 months ago* (last edited 5 months ago) (1 children)

Quick question do you have a git repo for this yet?

Also have you looked at briar because it could be interesting to incorporate some of the Bluetooth based stuff from that.

Not yet, I don't release projects until they're useful for others with just the documentation provided, and I've been taking a bit of a hiatus due to family vacations and whatnot.

I do have a private git repo I'm working in, and I'll make it public once it's usable. I have basic infrastructure set up and multiple clients can communicate, but they don't yet share the full state. Next steps are:

  1. Clients should be able to connect and sync the full state by just fetching differences
  2. Some basic level of moderation - planning for something like a web of trust, but with transitive, fractional trust
  3. Stress testing and a rapid rollout plan for relays (needed to connect peers); I have one relay, but I'll probably need a swarm if it gets any kind of traction

It'll probably take a few months of work to get there, but I have the basics of 2 in the works, and I think the library I'm using for 1 is going to get a 1.0 release soonish, so I might delay until then. Things that won't work when I launch:

  • web - it'll be a desktop only app, but the client is built in tauri, so web may be an option eventually
  • mobile - tauri's mobile support is still in beta, so I won't launch with that (and it's a lot of work getting releases going)
  • non-text posts - only links or text are supported, markdown works too
  • fediverse bridge - I'd like to build this, but I don't understand ActivityPub well enough to just jump in yet

Anyway, I'll post on a few places once it's ready. Maybe by the end of the year, by probably not.