[HN Gopher] P2panda: P2P protocol for secure, energy-efficient l... ___________________________________________________________________ P2panda: P2P protocol for secure, energy-efficient local-first web applications Author : rapnie Score : 117 points Date : 2023-08-21 17:14 UTC (5 hours ago) (HTM) web link (p2panda.org) (TXT) w3m dump (p2panda.org) | jedahan wrote: | I wish I could read the specification offline. It's split into a | lot of smaller pages. | actionfromafar wrote: | Should I be this disappointed that there is no C or C++ library? | wmf wrote: | [flagged] | zer8k wrote: | Post like these are why the Rust community is mocked. | | C and C++ aren't over. They probably never will be. The | correct answer is that the author chose two languages to | support because it's their library. It is, indeed, strange a | binding doesn't exist for two of the most popular languages | on the planet. Not a big deal. | | A quick perusal of both github repos and job listings shows | that C and C++ are _definitely_ not "over". | iknowstuff wrote: | It's over in the sense that new projects don't get started | in C++ unless they have huge dependencies on C++ libraries, | like video games. And they shouldn't, it would be | irresponsible. | | Obviously, legacy code - and so the job market - will | remain present for a while. Although it already pays less | than other languages. | msm_ wrote: | I'm pretty sure it's not. Maybe you wish it was, but it's | not. C is still commonly used as a "lowest common | denominator" language, and other languages often use bindings | to native C libraries. This is still very common, and well | supported in almost all modern languages (sometimes even | completely embraced by some implementations, like cpython). | Even Signal has official C bindings (libsignal-protocol-c). | | To reiterate my point, one may hope that C goes away, but | objectively, in the foreseeable future, it continues to be a | backbone of most software. | TeeMassive wrote: | Rust has C bindings too | zer8k wrote: | Rusts ABI may as well not exist however. Rust can co- | exist with C. Everything else that depends on C's ABI | won't be able to play nicely with Rust without | significant work from one side or the other. | emilecantin wrote: | Well, it says WEB applications, so presumably this is something | that will run in a browser, which implies some flavour of | Javascript. | | Tangentially, I've been interested in this space for a while, | and I have a few in-progress projects built on CouchDB. My aim | was to offer the offline app for free and monetize through sync | / sharing features. This would've mirrored my cost structure | (hosting), so I thought it was a pretty fair way to monetize a | product. | nofollow wrote: | easy to find from the homepage: | | https://p2panda.org/libraries/ | | > The core library is shipped both as a Rust crate p2panda-rs | with WebAssembly bindings and a NPM package p2panda-js with | TypeScript definitions running in NodeJS or any modern web | browser. | someguy7250 wrote: | Wow! This might just be what I've been hoping for, since 2020. | | What I hoped for was more of a generic backend for multiplayer | games. | | But this is even better. It looks like a next-gen bittorrent | which natively supports operations? | | How did the EU support something like this without worrying about | misuse? | | It would be fun to build something like a Blender plugin that | allows people to cooperate on free 3D models and animations. But | it's also unclear whether anyone would be legally liable when | something goes wrong. | | (Edit: It sounds like we want to avoid legal issues by having | everyone run their own local instances. I like that feeling of | hosting our own servers. But something just feels odd. Since when | are we allowed to be so open? What's the catch?) | chaostheory wrote: | I've been waiting for something like this. | | There are still many places even in developed countries where a | stable network connection isn't guaranteed | orthecreedence wrote: | You might like Holochain (https://www.holochain.org/) as well, | it's in a similar vein. | Jhsto wrote: | I wonder how complimentary this could be for etcd, which tends to | not work so great for structured data. | andreasdz wrote: | Oh wow, we didn't expect p2panda to pop up here (I'm adz, one of | the core contributors). Let us know if you have any questions :-) | | This week we're wrapping up a long development phase for a new | "aquadoggo" version (https://github.com/p2panda/aquadoggo/) - our | p2panda node reference implementation. The release will come with | a dynamic GraphQL query (filtering, cursor pagination, text | search and ordering), blob support, a better configuration | interface and a full p2p networking stack (QUIC) with NAT | traversal techniques and relays based on libp2p. | | Next steps in our current funding period is a showcase app for | Android (built with Flutter and Rust FFI bindings from our core | libraries), a bee sighting database for scientists in the | Brazilian Amazon (in collaboration with https://www.meli- | bees.org/). | | Further down the lane we're continuing our integration of MLS - | as some high-level APIs are still missing - and a capability | system. We're definitely not out of ideas yet! | mdhb wrote: | If that means you will also have a Dart / Flutter package | available for development I would be very interested. | shams93 wrote: | This looks super cool! I was thinking I couldn't finish my PWA | without a database but its much cooler to use this instead I | really don't want to store stuff for people who buy my service, | I want to sell them support instead of storage. | brunoqc wrote: | Is it blockchain? | orthecreedence wrote: | No. Just old fashioned p2p with signed transaction chains. No | consensus, as far as I can tell. | CGamesPlay wrote: | Looks interesting, but there doesn't seem to be any information | about what CRDT it's using, or how it handles concurrent editing | at all. The only operation appears to be "set key", so it looks | pretty basic. Is this the target state or is this going to be | expanded upon in the future? | mdhb wrote: | Seeing that this was put together by one of the co-authors of the | recently released MLS (Message Layer Security) spec and backed by | an EU funding grant are both interesting tidbits that got me more | interested in this. | | This would indeed allow for a very different internet and would | provide some viable options untethered to big tech as it exists | today. | raphaelrobert wrote: | I case you refer to me as the MLS co-author, I'm not directly | affiliated with the p2panda project. I think p2panda uses | OpenMLS (OSS implementation of the MLS protocol, | https://openmls.tech), hence the connection. I did however | exchange with this friendly an motivated team! | mdhb wrote: | Thanks for clarifying that. I'm sorry if I misunderstood but | I really appreciate you pointing out those facts. | andreasdz wrote: | Yes, it's been a pleasure to work with OpenMLS, they | consulted us with the integration into p2panda! As mentioned | in my other comment: while most low-level parts have already | been written, we still need to work on our high-level APIs, | which should allow for easy integration of data encryption | when using our SDKs. We aim at doing this in our next funding | period. ___________________________________________________________________ (page generated 2023-08-21 23:00 UTC)