mirror of
https://github.com/fluencelabs/rust-libp2p
synced 2025-05-29 18:51:22 +00:00
Currently, our top-level `Cargo.toml` manifest represents a crate AND a workspace. This causes surprising behaviour (e.g. #2949) where we need to explicitly pass `--workpace` to every command to run it on the entire workspace and not just the meta crate. My moving the meta crate into its own directory, the root manifest file is a virtual manifest only and thus, every `cargo` command will automatically default to running on the entire workspace. On top of this, I personally find it easier to understand if workspace and crate manifests are not mixed. Pull-Request: #3536.
28 lines
1.3 KiB
Markdown
28 lines
1.3 KiB
Markdown
# Examples
|
|
|
|
A set of examples showcasing how to use rust-libp2p.
|
|
|
|
## Getting started
|
|
|
|
|
|
## Individual libp2p features
|
|
|
|
- [Chat](./chat) A basic chat application demonstrating libp2p and the mDNS and Gossipsub protocols.
|
|
- [Distributed key-value store](./distributed-key-value-store) A basic key value store demonstrating libp2p and the mDNS and Kademlia protocol.
|
|
|
|
- [File sharing application](./file-sharing) Basic file sharing application with peers either providing or locating and getting files by name.
|
|
|
|
While obviously showcasing how to build a basic file sharing application with the Kademlia and
|
|
Request-Response protocol, the actual goal of this example is **to show how to integrate
|
|
rust-libp2p into a larger application**.
|
|
|
|
- [IPFS Kademlia](./ipfs-kad) Demonstrates how to perform Kademlia queries on the IPFS network.
|
|
|
|
- [IPFS Private](./ipfs-private) Implementation using the gossipsub, ping and identify protocols to implement the ipfs private swarms feature.
|
|
|
|
- [Ping](./ping) Small `ping` clone, sending a ping to a peer, expecting a pong as a response. See [tutorial](../src/tutorials/ping.rs) for a step-by-step guide building the example.
|
|
|
|
|
|
- [Rendezvous](./rendezvous) Rendezvous Protocol. See [specs](https://github.com/libp2p/specs/blob/master/rendezvous/README.md).
|
|
|