6 个版本
0.28.1 | 2021 年 4 月 15 日 |
---|---|
0.28.0 | 2021 年 3 月 5 日 |
0.26.1 | 2021 年 2 月 5 日 |
0.26.0 | 2021 年 1 月 7 日 |
0.20.0 | 2020 年 12 月 31 日 |
#23 在 #networking-stack
每月下载量 26 次
用于 fluence-fork-libp2p
685KB
12K SLoC
libp2p 工作的中央仓库
此仓库是 Rust 开发 libp2p 规范的中心地点。
入门
-
主要文档 可在 https://docs.rs/libp2p 找到。
-
示例 文件夹包含展示此仓库中许多协议的小二进制文件。
-
对于 安全问题 请 提交一个私人安全漏洞报告。请不要在 GitHub 上提交公开问题。
-
要 报告错误、建议改进或请求新功能 请在此仓库上打开 GitHub 问题。
-
对于 rust-libp2p 特定问题 请使用 GitHub 讨论 论坛 https://github.com/libp2p/rust-libp2p/discussions。
-
对于 与多个 libp2p 实现相关的讨论和问题 请使用 libp2p Discourse 论坛 https://discuss.libp2p.io。
-
要参与同步讨论,请加入 公开 rust-libp2p 维护者通话 或 每周两次的 libp2p 社区通话。
仓库结构
本仓库的主要组件结构如下
-
core/
:实现了libp2p-core
,包括其Transport
和StreamMuxer
API,几乎所有其他crate都依赖于这些API。 -
transports/
:实现了传输协议(例如TCP)和协议升级(例如认证加密、压缩等),这些基于libp2p-core
的Transport
API。 -
muxers/
:实现了libp2p-core
的StreamMuxer
接口,例如在(通常为TCP的)连接之上实现的(子)流复用协议。复用协议是(强制性的)Transport
升级。 -
swarm/
:基于libp2p-core
的libp2p-swarm
实现,使用中心接口NetworkBehaviour
和ConnectionHandler
来实现应用协议(见protocols/
)。 -
protocols/
:基于libp2p-swarm
API的应用协议实现。 -
misc/
:实用库。 -
libp2p/examples/
:内置应用协议的工作示例(见protocols/
),具有常见的Transport
配置。
社区指南
libp2p项目遵循 IPFS行为准则。
tl;dr
- 请尊重他人。
- 我们在此提供帮助: [email protected]
- 我们绝不容忍任何不当行为。
- 违反此准则可能导致您迅速且永久地从IPFS[和libp2p]社区中除名。
- "Too long, didn't read" 不能作为不了解本文件的借口。
维护者
(按字母顺序排列。)
- João Oliveira (@jxs)
- Thomas Eizinger (@thomaseizinger)
知名用户
(如果您希望将您的项目添加到此,请提交一个pull request)
- COMIT - Bitcoin–Monero 跨链原子交换。
- Forest - Filecoin的Rust实现。
- fuel-core - Fuel协议的Rust实现。
- HotShot - 由 Espresso Systems 开发的Rust编写的去中心化序列器。
- ipfs-embed - 由 Actyx 使用和维护的小型可嵌入ipfs实现。
- Homestar - 由 Fission 使用和维护的跨星际虚拟机(IPVM)实现。
- beetle - 针对云和移动平台的下一代IPFS实现。
- Lighthouse - Rust编写的Ethereum共识客户端。
- Locutus - 全球、可观察、去中心化的键值存储。
- OpenMina - 在浏览器中实现的Mina Rust实现。
- rust-ipfs - Rust中的IPFS实现。
- Safe Network - Rust中的Safe Network实现。
- Starcoin - 通过分层扩展的智能合约区块链网络。
- Subspace - Subspace网络参考实现
- Substrate - 区块链创新的框架,被Polkadot使用。
- Taple - 由OpenCanarias提供的可持续DLT,用于资产和流程的可追溯性。
依赖关系
~9–14MB
~289K SLoC