P2Pcollab is a collacection of composable libraries implementing gossip-based protocols for P2P collaboration.
These libraries are distributed under the AGPL-3.0-only license.
- PolderCast: P2P topic-based pub/sub
- RingCast: P2P hybrid dissemination
- VICINITY: P2P clustering & topology management
- CYCLON: Random Peer Sampling
- TAPS: Trust-Aware Peer Sampling
- TAC: Trust-Aware Clustering
Set up Nix Flakes, then run:
nix build
To get a development shell with all dependencies and build tools installed, run:
nix develop
To build from source, generate documentation, and run tests, use dune
:
dune build
dune build @doc
dune runtest -f -j1 --no-buffer
In addition, the following Makefile
targets are available
as a shorthand for the above:
make
make build
make doc
make test
The documentation and API reference is generated from the source interfaces.
It can be consulted online or via odig
, e.g.:
odig doc p2p
odig doc p2p-cyclon
...