Expand description
IPFS node implementation
Ipfs is a peer-to-peer system with content addressed functionality. The main
entry point for users of this crate is the Ipfs
facade, which allows access to most of the
implemented functionality.
This crate passes a lot of the interface-ipfs-core test suite; most of that functionality is
in ipfs-http
crate. The crate has some interoperability with the go-ipfs and js-ipfs
implementations.
ipfs
is an early alpha level crate: APIs and their implementation are subject to change in
any upcoming release at least for now. The aim of the crate is to become a library-first
production ready implementation of an Ipfs node.
Re-exports§
pub use block::Block;
pub use self::p2p::BehaviourEvent;
pub use self::p2p::KadResult;
pub use self::path::IpfsPath;
pub use self::repo::PinKind;
pub use self::repo::PinMode;
pub use libp2p;
Modules§
ipfs.dag
interface implementation aroundIpfs
.- Crate-wide errors.
- IPNS functionality around
Ipfs
. - P2P handling for IPFS nodes.
IpfsPath
related functionality for content addressed paths with links.refs
or the references of dag-pb and other supported IPLD formats functionality.- Storage implementation(s) backing the
crate::Ipfs
. - Adaptation for
ipfs-unixfs
crate functionality on top ofcrate::Ipfs
.
Macros§
- Easy way for a user to create a
Multiaddr
.
Structs§
- The configurable connection limits.
- Just re-export anyhow for now.
- The facade for the Ipfs node.
- The (opaque) key of a record.
- Identity keypair of a node.
- The ID of a single listener.
- Representation of a Multiaddr.
- Identifier of a peer of the network.
- The public key of a node’s identity keypair.
- Stream of a pubsub messages. Implements
FusedStream
. - Configured Ipfs which can only be started.
Enums§
Protocol
describes all possible multiaddress protocols.- Error associated with publishing a gossipsub message.
- A quorum w.r.t. the configured replication factor specifies the minimum number of distinct nodes that must be successfully contacted in order for a query to succeed.
Traits§
- A
NetworkBehaviour
defines the behaviour of the local node on the network.
Type Aliases§
Derive Macros§
- Generates a delegating
NetworkBehaviour
implementation for the struct this is used for. See the trait documentation for better description.