-
Notifications
You must be signed in to change notification settings - Fork 8
/
index.html
95 lines (94 loc) · 6.93 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
---
layout: default
---
<h2 id="about"><a href="#about">About</a></h2>
<p>p2panda aims to provide everything you need to build <strong>modern, privacy-respecting and secure local-first applications.</strong></p>
<p>We have adopted a <strong>modular approach</strong>—allowing projects the freedom to pick what they need and integrate it with minimal friction. We believe this approach contributes the most to a wider, interoperable p2p ecosystem which outlives “framework lock-in”.</p>
<p>Many of our Rust crates operate over raw bytes and are <strong>fully compatible with your own data types and any CRDT</strong>. In case you don't plan on building your own peer-to-peer protocol, we have you covered with <strong>all features required to build a mobile or desktop application</strong>.</p>
<p>We're using <strong>existing libraries</strong> like <a href="https://github.com/n0-computer/iroh" target="_blank">iroh</a> and well-established standards such as BLAKE3, Ed25519, STUN, CBOR, TLS, QUIC, <a href="https://github.com/ucan-wg/spec" target="_blank">UCAN</a>, <a href="https://en.m.wikipedia.org/wiki/Double_Ratchet_Algorithm" target="_blank">Double Ratchet</a> and more - as long as they give us the radical offline-first guarantee we need.</p>
<p>We want collaboration, encryption and access-control to work even when operating over unstable or ephemeral connections. Towards this end, we're <strong>actively working alongside researchers to design and implement resilient solutions</strong>.</p>
<p>p2panda is "broadcast-only" at it’s heart, making any data not only offline-first but also <strong>compatible with post-internet communication infrastructure</strong>, such as shortwave, packet radio, Bluetooth Low Energy, LoRa or simply a USB stick.</p>
<p>p2panda is a very <strong>multifaceted project</strong>: We maintain our crates, apply for grants, design protocols and do research in radically distributed data-types. We organise community events and write peer-to-peer applications with our friends and collaborators.</p>
<h2 id="libraries"><a href="#libraries">Libraries</a></h2>
<ul class="libraries">
<li>
<a href="https://crates.io/crates/p2panda-net" target="_blank"><code>📦 p2panda-net</code></a> Find peers in a peer-to-peer network, connect to them directly - whereever they are - and exchange any data of your interest in form of byte streams.
</li>
<li>
<a href="https://crates.io/crates/p2panda-discovery" target="_blank"><code>📦 p2panda-discovery</code></a> Solutions to find other peers in your local network or on the internet and interfaces to start building your own.
</li>
<li>
<a href="https://crates.io/crates/p2panda-sync" target="_blank"><code>📦 p2panda-sync</code></a> Protocol implementations to efficiently "catch up on past state" with other peers and interfaces to start building your own.
</li>
<li>
<a href="https://crates.io/crates/p2panda-blobs" target="_blank"><code>📦 p2panda-blobs</code></a> Efficiently send, receive and store (very large) files.
</li>
<li>
<a href="https://crates.io/crates/p2panda-core" target="_blank"><code>📦 p2panda-core</code></a> Highly extensible data-types of the p2panda protocol for secure, distributed and efficient exchange of data, supporting networks from the internet to packet radio, LoRa or BLE.
</li>
<li>
<a href="https://crates.io/crates/p2panda-store" target="_blank"><code>📦 p2panda-store</code></a> Interfaces and implementations to store p2panda data types in databases, memory or file-systems.
</li>
<li>
<a href="https://crates.io/crates/p2panda-stream" target="_blank"><code>📦 p2panda-stream</code></a> Collection of various methods to process your p2panda data streams before they reach your application.
</li>
<li>
<code>🚧 p2panda-node</code> All-in-one p2panda node which can be used in federated or fully decentralised networks or both at the same time. Supports "lightweight" clients running in the browser.
</li>
<li>
<code>🚧 p2panda-caps</code> Manage access to data with capabilities.
</li>
<li>
<code>🚧 p2panda-groups</code> Local-first roles and group-encryption with Post-Compromise-Security and optional Forward-Secrecy.
</li>
</ul>
<h2 id="news"><a href="#news">News</a></h2>
<div class="grid">
{% for post in site.posts %}
<section class="post rotate-3">
<a href="{{ post.url | prepend: site.baseurl }}">
<h3>✉️ {{ post.title }}</h3>
<p>{{ post.date | date: "%d.%m.%y"}} ~ {{ post.subtitle }}</p>
</a>
</section>
{% endfor %}
</div>
<h2 id="projects"><a href="#projects">Projects</a></h2>
<div class="grid">
<section class="project">
<a href="https://gitlab.gnome.org/Teams/Design/other-app-mockups/-/tree/master/aardvark" target="_blank">
<h3>📝 Aardvark (coming mid-2025)</h3>
<p>Local-first, collaborative text editor, based on GTK and Automerge.</p>
<p>This is a collaboration with friends from GNOME and part of a general research to explore local-first code, UI and UX patterns in GTK applications.</p>
</a>
</section>
<section class="project">
<a href="https://github.com/toolkitties/toolkitty" target="_blank">
<h3>📢 Toolkitty (coming mid-2025)</h3>
<p>Autonomous coordination toolkit for collectives, organisers and places to share resources and organise events in a shared calendar.</p>
<p>Toolkitty is built for iOS, Android and Desktop with Tauri.</p>
</a>
</section>
<section class="project">
<a href="https://github.com/p2panda/meli" target="_blank">
<h3>🐝 Meli Bees App</h3>
<p>Collaborative Android app for sighting and categorisation of Meliponini bee species in the Brazilian Amazon.</p>
<p>This project is a collaboration between p2panda and Meli and built with Flutter and aquadoggo.</p>
</a>
</section>
<section class="project">
<a href="https://github.com/HIRO-MicroDataCenters-BV/rhio" target="_blank">
<h3>📡 rhio</h3>
<p>rhio is a peer-to-peer message router and file sync solution allowing processes to rapidly exchange messages and efficiently replicate large files without any centralised coordination.</p>
<p>rhio was built in collaboration with HIRO.</p>
</a>
</section>
<section class="project">
<a href="https://github.com/p2panda/aquadoggo" target="_blank">
<h3>🐬 aquadoggo</h3>
<p>aquadoggo is a node implementation based on an earlier version of p2panda. It is a intended as a tool for making the design and build of local-first, collaborative p2p applications as simple as possible, and hopefully even a little fun!</p>
</a>
</section>
</div>
<h2 id="contact"><a href="#contact">Contact</a></h2>
<p>Find all source code on <a href="https://github.com/p2panda" target="_blank">GitHub</a>, follow us on the <a href="https://autonomous.zone/@p2panda" target="_blank">Fediverse</a>, join our official <a href="https://wald.liebechaos.org">Chat</a> or write us an <a href="mailto:[email protected]">Email</a>! We'd love to hear from you!</p>