From 399f7a2eda08bb084483e74f4b6da0ef992412f3 Mon Sep 17 00:00:00 2001 From: danielsanchezq Date: Wed, 2 Nov 2022 11:01:00 +0100 Subject: [PATCH] Refactor waku to waku-bindings crate Added badges --- Cargo.toml | 2 +- examples/toy-chat/Cargo.toml | 2 +- {waku => waku-bindings}/.cargo/config.toml | 0 {waku => waku-bindings}/Cargo.toml | 0 waku-bindings/README.md | 39 ++++++++++++++++++ {waku => waku-bindings}/src/decrypt.rs | 0 {waku => waku-bindings}/src/events/mod.rs | 0 {waku => waku-bindings}/src/general/mod.rs | 0 {waku => waku-bindings}/src/lib.rs | 0 {waku => waku-bindings}/src/node/config.rs | 0 {waku => waku-bindings}/src/node/discovery.rs | 0 {waku => waku-bindings}/src/node/filter.rs | 0 {waku => waku-bindings}/src/node/lightpush.rs | 0 .../src/node/management.rs | 0 {waku => waku-bindings}/src/node/mod.rs | 0 {waku => waku-bindings}/src/node/peers.rs | 0 {waku => waku-bindings}/src/node/relay.rs | 0 {waku => waku-bindings}/src/node/store.rs | 0 {waku => waku-bindings}/tests/node.rs | 0 waku-sys/README.md | 40 +++++++++++++++++++ 20 files changed, 81 insertions(+), 2 deletions(-) rename {waku => waku-bindings}/.cargo/config.toml (100%) rename {waku => waku-bindings}/Cargo.toml (100%) create mode 100644 waku-bindings/README.md rename {waku => waku-bindings}/src/decrypt.rs (100%) rename {waku => waku-bindings}/src/events/mod.rs (100%) rename {waku => waku-bindings}/src/general/mod.rs (100%) rename {waku => waku-bindings}/src/lib.rs (100%) rename {waku => waku-bindings}/src/node/config.rs (100%) rename {waku => waku-bindings}/src/node/discovery.rs (100%) rename {waku => waku-bindings}/src/node/filter.rs (100%) rename {waku => waku-bindings}/src/node/lightpush.rs (100%) rename {waku => waku-bindings}/src/node/management.rs (100%) rename {waku => waku-bindings}/src/node/mod.rs (100%) rename {waku => waku-bindings}/src/node/peers.rs (100%) rename {waku => waku-bindings}/src/node/relay.rs (100%) rename {waku => waku-bindings}/src/node/store.rs (100%) rename {waku => waku-bindings}/tests/node.rs (100%) create mode 100644 waku-sys/README.md diff --git a/Cargo.toml b/Cargo.toml index fe953e9..e424c95 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [workspace] members = [ - "waku", + "waku-bindings", "waku-sys", "examples/toy-chat" ] \ No newline at end of file diff --git a/examples/toy-chat/Cargo.toml b/examples/toy-chat/Cargo.toml index dbf4d95..acbbc68 100644 --- a/examples/toy-chat/Cargo.toml +++ b/examples/toy-chat/Cargo.toml @@ -8,7 +8,7 @@ authors = [ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -waku = { path = "../../waku" } +waku = { path = "../../waku-bindings" } tui = "0.19" crossterm = "0.25" unicode-width = "0.1" diff --git a/waku/.cargo/config.toml b/waku-bindings/.cargo/config.toml similarity index 100% rename from waku/.cargo/config.toml rename to waku-bindings/.cargo/config.toml diff --git a/waku/Cargo.toml b/waku-bindings/Cargo.toml similarity index 100% rename from waku/Cargo.toml rename to waku-bindings/Cargo.toml diff --git a/waku-bindings/README.md b/waku-bindings/README.md new file mode 100644 index 0000000..7c06133 --- /dev/null +++ b/waku-bindings/README.md @@ -0,0 +1,39 @@ +# Waku Rust bindings + +[github](https://github.com/waku-org/waku-rust-bindings) +[crates.io](https://crates.io/crates/waku-rust-bindings) +[docs.rs](https://docs.rs/waku-rust-bindings) +[build status](https://github.com/waku-org/waku-rust-bindings/actions?query=branch%3Amaster) + +Rust layer on top of [`go-waku`](https://github.com/status-im/go-waku) [c ffi bindings](https://github.com/status-im/go-waku/blob/v0.2.2/library/README.md). + +## About [Waku](https://waku.org/) + +Waku is the communication layer for Web3. Decentralized communication that scales. + +Private. Secure. Runs anywhere. + +### What is Waku? + +Waku is a suite of privacy-preserving, peer-to-peer messaging protocols. + +Waku removes centralized third parties from messaging, enabling private, secure, censorship-free communication with no single point of failure. + +Waku provides privacy-preserving capabilities, such as sender anonymity,metadata protection and unlinkability to personally identifiable information. + +Waku is designed for generalized messaging, enabling human-to-human, machine-to-machine or hybrid communication. + +Waku runs everywhere: desktop, server, including resource-restricted devices, such as mobile devices and browsers. +How does it work? + +The first version of Waku had its origins in the Whisper protocol, with optimizations for scalability and usability. Waku v2 is a complete rewrite. Its relay protocol implements pub/sub over libp2p, and also introduces additional capabilities: + +1. Retrieving historical messages for mostly-offline devices. +2. Adaptive nodes, allowing for heterogeneous nodes to contribute. +3. Bandwidth preservation for light nodes. + +This makes it ideal for running a p2p protocol on mobile, or in other similarly resource-restricted environments. + + + +Read the [Waku docs](https://docs.wakuconnect.dev/) \ No newline at end of file diff --git a/waku/src/decrypt.rs b/waku-bindings/src/decrypt.rs similarity index 100% rename from waku/src/decrypt.rs rename to waku-bindings/src/decrypt.rs diff --git a/waku/src/events/mod.rs b/waku-bindings/src/events/mod.rs similarity index 100% rename from waku/src/events/mod.rs rename to waku-bindings/src/events/mod.rs diff --git a/waku/src/general/mod.rs b/waku-bindings/src/general/mod.rs similarity index 100% rename from waku/src/general/mod.rs rename to waku-bindings/src/general/mod.rs diff --git a/waku/src/lib.rs b/waku-bindings/src/lib.rs similarity index 100% rename from waku/src/lib.rs rename to waku-bindings/src/lib.rs diff --git a/waku/src/node/config.rs b/waku-bindings/src/node/config.rs similarity index 100% rename from waku/src/node/config.rs rename to waku-bindings/src/node/config.rs diff --git a/waku/src/node/discovery.rs b/waku-bindings/src/node/discovery.rs similarity index 100% rename from waku/src/node/discovery.rs rename to waku-bindings/src/node/discovery.rs diff --git a/waku/src/node/filter.rs b/waku-bindings/src/node/filter.rs similarity index 100% rename from waku/src/node/filter.rs rename to waku-bindings/src/node/filter.rs diff --git a/waku/src/node/lightpush.rs b/waku-bindings/src/node/lightpush.rs similarity index 100% rename from waku/src/node/lightpush.rs rename to waku-bindings/src/node/lightpush.rs diff --git a/waku/src/node/management.rs b/waku-bindings/src/node/management.rs similarity index 100% rename from waku/src/node/management.rs rename to waku-bindings/src/node/management.rs diff --git a/waku/src/node/mod.rs b/waku-bindings/src/node/mod.rs similarity index 100% rename from waku/src/node/mod.rs rename to waku-bindings/src/node/mod.rs diff --git a/waku/src/node/peers.rs b/waku-bindings/src/node/peers.rs similarity index 100% rename from waku/src/node/peers.rs rename to waku-bindings/src/node/peers.rs diff --git a/waku/src/node/relay.rs b/waku-bindings/src/node/relay.rs similarity index 100% rename from waku/src/node/relay.rs rename to waku-bindings/src/node/relay.rs diff --git a/waku/src/node/store.rs b/waku-bindings/src/node/store.rs similarity index 100% rename from waku/src/node/store.rs rename to waku-bindings/src/node/store.rs diff --git a/waku/tests/node.rs b/waku-bindings/tests/node.rs similarity index 100% rename from waku/tests/node.rs rename to waku-bindings/tests/node.rs diff --git a/waku-sys/README.md b/waku-sys/README.md new file mode 100644 index 0000000..0586dbf --- /dev/null +++ b/waku-sys/README.md @@ -0,0 +1,40 @@ +# Waku autogenerated rust bindings + +[github](https://github.com/waku-org/waku-rust-bindings) +[crates.io](https://crates.io/crates/waku-rust-bindings) +[docs.rs](https://docs.rs/waku-rust-bindings) +[build status](https://github.com/waku-org/waku-rust-bindings/actions?query=branch%3Amaster) + +Rust layer on top of [`go-waku`](https://github.com/status-im/go-waku) [c ffi bindings](https://github.com/status-im/go-waku/blob/v0.2.2/library/README.md). + + +## About [Waku](https://waku.org/) + +Waku is the communication layer for Web3. Decentralized communication that scales. + +Private. Secure. Runs anywhere. + +### What is Waku? + +Waku is a suite of privacy-preserving, peer-to-peer messaging protocols. + +Waku removes centralized third parties from messaging, enabling private, secure, censorship-free communication with no single point of failure. + +Waku provides privacy-preserving capabilities, such as sender anonymity,metadata protection and unlinkability to personally identifiable information. + +Waku is designed for generalized messaging, enabling human-to-human, machine-to-machine or hybrid communication. + +Waku runs everywhere: desktop, server, including resource-restricted devices, such as mobile devices and browsers. +How does it work? + +The first version of Waku had its origins in the Whisper protocol, with optimizations for scalability and usability. Waku v2 is a complete rewrite. Its relay protocol implements pub/sub over libp2p, and also introduces additional capabilities: + +1. Retrieving historical messages for mostly-offline devices. +2. Adaptive nodes, allowing for heterogeneous nodes to contribute. +3. Bandwidth preservation for light nodes. + +This makes it ideal for running a p2p protocol on mobile, or in other similarly resource-restricted environments. + + + +Read the [Waku docs](https://docs.wakuconnect.dev/) \ No newline at end of file