[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)