Ocaml P2p Save

Collection of composable P2P libraries

Project README

Build Status

Gossip-based protocols for P2P collaboration

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.

Modules

  • 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

Building with Nix

Set up Nix Flakes, then run:

nix build

Developing with Nix

To get a development shell with all dependencies and build tools installed, run:

nix develop

Building

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

Documentation

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
...
Open Source Agenda is not affiliated with "Ocaml P2p" Project. README Source: p2pcollab/ocaml-p2p

Open Source Agenda Badge

Open Source Agenda Rating