44 次重大发布

0.45.0 2024 年 8 月 9 日
0.44.0 2023 年 11 月 5 日
0.43.0 2023 年 6 月 20 日
0.42.1 2023 年 3 月 12 日
0.6.0 2019 年 3 月 29 日

2090网络编程

Download history 5271/week @ 2024-04-26 5553/week @ 2024-05-03 5347/week @ 2024-05-10 5879/week @ 2024-05-17 6526/week @ 2024-05-24 5749/week @ 2024-05-31 7335/week @ 2024-06-07 6492/week @ 2024-06-14 5362/week @ 2024-06-21 3472/week @ 2024-06-28 2519/week @ 2024-07-05 5129/week @ 2024-07-12 5187/week @ 2024-07-19 4597/week @ 2024-07-26 3691/week @ 2024-08-02 8539/week @ 2024-08-09

23,086 每月下载量
12 个crate中使用 (直接使用2个)

MIT 许可证

780KB
15K SLoC

libp2p 工作的主要仓库

dependency status Crates.io docs.rs docs.rs master

此仓库是 libp2p 规范的 Rust 开发的中心地点。

入门

仓库结构

此仓库的主要组件如下结构化

  • core/:实现了 libp2p-core 的代码,包含其 TransportStreamMuxer API,几乎所有其他crate都依赖于这些API。

  • transports/:基于 libp2p-coreTransport API 实现了传输协议(例如TCP)和协议升级(例如,用于认证加密、压缩等)。

  • muxers/:实现 libp2p-coreStreamMuxer 接口,例如在(通常是 TCP)连接上实现(子)流复用协议。复用协议是(强制性的)Transport 升级。

  • swarm/:在 libp2p-core 的基础上实现 libp2p-swarm,使用核心接口 NetworkBehaviourConnectionHandler 来实现应用协议(见 protocols/)。

  • protocols/:基于 libp2p-swarm API 的应用协议实现。

  • misc/:实用库。

  • libp2p/examples/:内置应用协议(见 protocols/)的工作示例,带有常见的 Transport 配置。

社区指南

libp2p 项目遵循 IPFS 行为准则

tl;dr

  • 请尊重他人。
  • 我们在这里提供帮助: [email protected]
  • 我们不容忍任何滥用行为。
  • 违反此准则可能导致迅速且永久地从 IPFS [和 libp2p] 社区中除名。
  • "太长,没读" 不是不了解此文件内容的有效借口。

维护者

(按字母顺序排列。)

知名用户

(如果你想让你的项目被添加在这里,请提交一个 pull request)

  • COMIT - 比特币–门罗币跨链原子交换。
  • Forest - Filecoin 的 Rust 实现。
  • fuel-core - Fuel 协议的 Rust 实现。
  • HotShot - 由 Espresso Systems 开发的 Rust 语言编写的去中心化 sequencer。
  • ipfs-embed - 由 Actyx 使用和维护的小型可嵌入的 ipfs 实现。
  • Homestar - 由 Fission 使用和维护的星际虚拟机(IPVM)实现。
  • beetle - 针对云和移动平台的下一代 IPFS 实现。
  • Lighthouse - 以太坊共识客户端,用 Rust 编写。
  • Locutus - 全球、可观察、去中心化的键值存储。
  • OpenMina - 在浏览器中实现的 Mina Rust 实现。
  • rust-ipfs - Rust 中的 IPFS 实现。
  • Safe Network - Rust 中的 Safe Network 实现。
  • Starcoin - 通过分层扩展的智能合约区块链网络。
  • Subspace - Subspace 网络参考实现。
  • Substrate - 区块链创新的框架,被 Polkadot 使用。
  • Taple - 由 OpenCanarias 开发的可持续 DLT,用于资产和流程可追溯性。
  • Ceylon - 一个多代理系统(MAS)开发框架。

lib.rs:

floodsub 协议的实现。

依赖项

~8-15MB
~211K SLoC