libp2p is a special kind of frustrating; it's full of good ideas that never come to fruition because of incomplete specs, missing documentation, broken links, module incompatibilities, premature deprecations, bad error messages, ...
@joepie91 its that bad.? i figured maybe 70% of the ideas are implemented when i read their docs a while ago
@ckie Unfortunately yes - I have tried using it in some capacity a half dozen times over the past decade and *every single time* I gave up after a day of chasing dead ends - the most recent fuckup is them hard-deprecating js-libp2p in favour of a replacement... and the replacement doesn't actually have feature parity yet
And it's just always a never-ending stream of individually small things like that, constantly
@ckie Like this morning alone I've ended up following links to three(!) different documentation sites/repositories that no longer exist, some of the documentation seems to have vanished entirely aside from Git repo history, and two years ago they committed package.json changes that claimed to set up "dual CJS/ESM support" but that could never have actually worked
(And now they just claim to be ESM-only, with still the exact same setup)
@joepie91 damn. it looks like the one unaffiliated libp2p-based project i could think of ([MessageHub](https://github.com/search?q=repo%3Agdlol%2FMessageHub+libp2p+&type=code&p=2)) is basically just using them as an overlay network too, which is a shame.
i suppose the primary libp2p project then is the big amount of docs about the underlying concepts & it just happens to come with some example code 💜 (probably)
@ckie Here's an example: https://github.com/ipfs-inactive/research-CRDT
This is supposed to be where CRDT-over-libp2p stuff is researched, but it's deprecated... the linked repo is also deprecated... and no deprecation notice there that explains *why* it is deprecated either, it's just gone
@joepie91 have you looked at pinecone? The matrix devs working on p2p tried libp2p for a while and ended up deciding to build pinecone instead for what seems similar reasons.
Like, seriously, I would be *so* happy to have a libp2p that a) isn't knee-deep in cryptogrift shit and b) actually worked as advertised