A protocol for peer-to-peer data stores. The best parts? Fine-grained permissions, a keen approach to privacy, destructive edits, and a dainty bandwidth and memory footprint.
What are some general usecases?
Once upon a time, I built a proof of concept distributed social network that ran entirely on cell phones.
I eventually ran into enough complications that I abandoned the project. But the tech did work. I could create posts, add friends, etc. (It just wasn’t reliable in its sync mechanism and I gave up trying to fix it.)
So… Imagine Lemmy, but a community’s data is stored collaboratively on mobile devices, the load shared by all its subscribers.
We all walk around with goddamn supercomputers in our pockets. We should put them to work.
Are there any implementations of this out there or is this purely theoretical (at this point in time)?
In addition to iroh there is https://github.com/earthstar-project/meadowcap-js and other projects under https://github.com/earthstar-project. See https://willowprotocol.org/more/projects-and-communities/index.html#projects_and_communities
It looks like there is at least one work-in-pprogress implementation. I found a Hacker News comment that points to github.com/n0-computer/iroh
Interesting. I thought Iroh was implementing the IPFS protocol.
Maybe IPFS can be described by one of Willow’s parameterized forms.
I haven’t found any projects using this protocol yet, so looks like it’s in an early stage of adoption for now.
It kinda seems like if AWS permissions management and torrenting had a baby. Edit: in all seriousness tho, I like the data model. Are there any libraries that support this yet?
Looks cool! I’d like to give it a try
Could this replace SyncThing? I use and like SyncThing but I also really want peer-to-peer copies and ST gets a bit messy when you try it (seems like a hub and spoke approach works better).
So while I’m myself struggling to fully understand what this is, it conceptually like it’s a blockchain on syncthing, where even if you subscribe to a read only share, you can locally delete what you don’t want to keep. So technically you could make bitorrent to behave like syncthing with search function for contacts you already know.