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