This is still very much early-days, but I’m thinking about building a distributed link aggregator. Some notes:

  • no servers (all P2P) except to connect peers
  • no “instances” so everything is in one namespace (so like reddit /r/community, not lemmy instance/c/community)
  • everyone is a moderator - moderation based on a web of trust type system
  • desktop first, mobile/web later - web would require servers, mobile may have platform-specific issues
  • no plans to integrate with fediverse, but could be possible
  • initial intent is to be text-only - file storage could be supported later in an opt-in basis (for now, just link to an external img host), but I’m worried about disk storage since there’s no central data lake and everyone needs to chip in some storage space

Some technical details:

  • written in Rust and ReactJS - Tauri-based
  • uses Iroh for data synchronization
  • looking into Appleseed and maybe TrustNet for moderation

Current status:

  • rewrote Appleseed and part of TrustNet to Rust for perf testing last weekend (Rust is waaay faster) - will probably rewrite again once I finish reading the paper (current code is a direct port)
  • have basic Tauri+Iroh app, but it’s a glorified chat app w/ no syncing between peers (a peer can join a chat, but will lose access if the host goes down)
  • reading source code for SimpleX (re-learning Haskell too) - could be interesting for DMs or something

I’m not sure how long I’ll work on this, but I’ll probably release some libraries under a relatively liberal license, so something like LGPL at the most stringent, but probably Apache/MIT (depends on if I need to clean-room the appleseed implementation).

So, if there’s interest here, I’m happy to post updates for discussion periodically.

  • @Zachariah
    link
    English
    21 month ago

    Reminds me a lot of freenetproject

    • @[email protected]OP
      link
      fedilink
      English
      21 month ago

      Yup, that’s kind of the idea, but less “free speech with strong anonymity” and more “user-driven moderation.”

      I might end up building something on top of the new freenet, but I haven’t looked into it too much. The old one (now hyphanet) isn’t really what I’m looking for.

      Basically, I want something like lemmy, but:

      • no mods - but still have a moderation solution
      • one namespace - so /c/community, not intanceA/c/community and instanceB/c/community
      • minimal duplication - enough for availability, but much less than lemmy