You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -72,11 +72,11 @@ presets: [
72
72
73
73
This should suffice since Logos plugins will handle other configurations linked to the designated business unit. However, if you encounter any inaccuracies in the data provided by Logos Plugins, please visit the [Logos Docusaurus Plugins](https://github.com/acid-info/logos-docusaurus-plugins) page and submit an issue.
74
74
75
-
## Customization
75
+
## Customisation
76
76
77
-
You can find the instructions on adding more documentation sections, localization, and versioning on the [Docusaurus](https://docusaurus.io/docs) website.
77
+
You can find the instructions on adding more documentation sections, localisation, and versioning on the [Docusaurus](https://docusaurus.io/docs) website.
78
78
79
-
> Note that theme customization is limited; for further instructions on customizing your theme, head over to [Logos Docusaurus Theme](https://github.com/acid-info/logos-docusaurus-plugins/tree/main/packages/logos-docusaurus-theme/).
79
+
> Note that theme customisation is limited; for further instructions on customizing your theme, head over to [Logos Docusaurus Theme](https://github.com/acid-info/logos-docusaurus-plugins/tree/main/packages/logos-docusaurus-theme/).
Copy file name to clipboardexpand all lines: diagrams/_protocol-interaction.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -25,6 +25,6 @@ The Pub/Sub topic `pubtopic1` serves as a means of routing messages (the network
25
25
1. Node A creates a WakuMessage `msg1` with [Content Topic](/overview/concepts/content-topics)`contentTopic1`.
26
26
2. Node F requests to get messages filtered by Pub/Sub topic `pubtopic1` and Content Topic `contentTopic1`. Node D subscribes F to this filter and will forward messages that match that filter in the future.
27
27
3. Node A publishes `msg1` on `pubtopic1`. The message is sent from Node A to Node B and then forwarded to Node D.
28
-
4. Node D, upon receiving `msg1` both stores the message for future retrieval by other nodes and forwards it to Node C.
28
+
4. Node D, upon receiving `msg1`, stores the message for future retrieval by other nodes and forwards it to Node C.
29
29
5. Node D also pushes `msg1` to Node F, informing it about the arrival of a new message.
30
30
6. At a later time, Node E comes online and requests messages matching `pubtopic1` and `contentTopic1` from Node D. Node D responds with `msg1` and potentially other messages that match the query.
Copy file name to clipboardexpand all lines: docs/community.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -2,15 +2,15 @@
2
2
title: Join Our Community
3
3
---
4
4
5
-
Welcome to the Waku Community! Whether you are interested in building with Waku, contributing to the network, expanding your knowledge, or staying up-to-date with our progress, we have something for everyone.
5
+
Welcome to the Waku Community! Whether you are interested in building with Waku, contributing to the network, expanding your knowledge, or staying abreast of our progress, we have something for everyone.
6
6
7
7
## [Discord](https://discord.waku.org/)
8
8
9
9
Connect with like-minded individuals in the Waku ecosystem! Introduce yourself, join developer conversations, or seek assistance. Join the [Waku Discord](https://discord.waku.org/) today!
10
10
11
11
## [Twitter](https://twitter.com/waku_org)
12
12
13
-
Stay informed and updated with the latest news and insights from Waku. [Follow us on Twitter](https://twitter.com/waku_org) now for all the exciting updates!
13
+
Stay informed and updated with the latest news and insights from Waku. [Follow us on Twitter](https://twitter.com/waku_org) now for all the thrilling updates!
Copy file name to clipboardexpand all lines: docs/contribute.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Get involved in Waku's open-source initiatives to improve the protocols, SDKs, d
6
6
7
7
-[Running a node](/guides/nodes-and-sdks#run-a-waku-node) within your application.
8
8
-[Reporting bugs](#report-a-bug) and [suggesting missing features](#suggest-a-feature) to the development team.
9
-
- Completing [Waku Bounties](#complete-waku-bounties) and participating in our [Bug Bounty Program](#submit-security-bug-reports).
9
+
- Completing [Waku Bounties](#complete-waku-bounties) and participating in our [Bug Bounty Programme](#submit-security-bug-reports).
10
10
- Inspiring other developers to explore and use Waku for [various use cases](/overview/use-cases).
11
11
12
12
Begin your journey by visiting the [Nodes and SDKs](/guides/nodes-and-sdks) guide and start building on Waku today!
@@ -17,21 +17,21 @@ To report a bug, create an issue in the appropriate [GitHub repository](https://
17
17
18
18
## Suggest a Feature
19
19
20
-
To suggest a new feature, create an issue in the appropriate [GitHub repository](https://github.com/waku-org). Ensure no issue exists about the feature and specify the use cases the feature can enable, allowing us to investigate and prioritize accordingly.
20
+
To suggest a new feature, create an issue in the appropriate [GitHub repository](https://github.com/waku-org). Ensure no issue exists about the feature and specify the use cases the feature can enable, allowing us to investigate and prioritise accordingly.
21
21
22
22
## Make Pull Requests
23
23
24
24
Community pull requests (PRs) are highly encouraged, but we recommend [suggesting a feature](#suggest-a-feature) first to gauge interest and gather feedback before proceeding with a PR.
25
25
26
26
## Complete Waku Bounties
27
27
28
-
To promote community contributions, we encourage members to complete bounties that benefit Waku and earn rewards while positively impacting the network. Join the bounty program at: <https://github.com/waku-org/bounties>.
28
+
To promote community contributions, we encourage members to complete bounties that benefit Waku and earn rewards while positively impacting the network. Join the bounty programme at: <https://github.com/waku-org/bounties>.
29
29
30
30
31
31
## Submit Security Bug Reports
32
32
33
-
To improve Waku's security, we invite researchers to collaborate in identifying and resolving potential vulnerabilities and earn rewards for their efforts. To participate, please review our bug bounty program's details and submit your reports at: <https://hackenproof.com/status-dot-im/waku>.
33
+
To improve Waku's security, we invite researchers to collaborate in identifying and resolving potential vulnerabilities and earn rewards for their efforts. To participate, please review our bug bounty programme's details and submit your reports at: <https://hackenproof.com/status-dot-im/waku>.
34
34
35
35
## Contribute to Waku Research
36
36
37
-
Waku Research is an innovative R&D project dedicated to developing modular peer-to-peer protocols for communication that prioritize privacy, security, and censorship resistance. Explore Waku's ongoing challenges and experimental code at <https://github.com/waku-org/research>.
37
+
Waku Research is an innovative R&D project dedicated to developing modular peer-to-peer protocols for communication that prioritise privacy, security, and censorship resistance. Explore Waku's ongoing challenges and experimental code at <https://github.com/waku-org/research>.
Check out the quick start guide and comprehensive tutorials to learn how to build applications using `@waku/sdk`:
80
+
Have a look at the quick start guide and comprehensive tutorials to learn how to build applications using `@waku/sdk`:
81
81
82
82
| Guide | Description |
83
83
| - | - |
84
84
|[Send and Receive Messages Using Light Push and Filter](/guides/js-waku/light-send-receive)| Learn how to send and receive messages on light nodes using the [Light Push](/overview/concepts/protocols#light-push) and [Filter](/overview/concepts/protocols#filter) protocols |
85
85
|[Retrieve Messages Using Store](/guides/js-waku/store-retrieve-messages)| Learn how to retrieve and filter historical messages on light nodes using the [Store](/overview/concepts/protocols#store) protocol |
86
-
|[Build React DApps Using @waku/react](/guides/js-waku/use-waku-react)| Learn how to use the [@waku/react](https://www.npmjs.com/package/@waku/react) package seamlessly integrate `@waku/sdk` into a React application |
87
86
|[Bootstrap DApps Using @waku/create-app](/guides/js-waku/use-waku-create-app)| Learn how to use the [@waku/create-app](https://www.npmjs.com/package/@waku/create-app) package to bootstrap your next `@waku/sdk` project from various example templates |
88
87
88
+
<!-- | [Build React DApps Using @waku/react](/guides/js-waku/use-waku-react) | Learn how to use the [@waku/react](https://www.npmjs.com/package/@waku/react) package seamlessly integrate `@waku/sdk` into a React application | -->
89
+
89
90
## Get Help and Report Issues
90
91
91
92
To engage in general discussions, seek assistance, or stay updated with the latest news, visit the `#support` and `#js-waku-contribute` channels on the [Waku Discord](https://discord.waku.org).
Copy file name to clipboardexpand all lines: docs/guides/js-waku/light-send-receive.md
+6-6
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Send and Receive Messages Using Light Push and Filter
3
3
---
4
4
5
-
This guide provides detailed steps to start using the `@waku/sdk` package by setting up a Light Node to send messages using the [Light Push protocol](/overview/concepts/protocols#light-push), and receive messages using the [Filter protocol](/overview/concepts/protocols#filter). Check out the [installation guide](/guides/js-waku/#installation) for steps on adding `@waku/sdk` to your project.
5
+
This guide provides detailed steps to start using the `@waku/sdk` package by setting up a Light Node to send messages using the [Light Push protocol](/overview/concepts/protocols#light-push), and receive messages using the [Filter protocol](/overview/concepts/protocols#filter). Have a look at the [installation guide](/guides/js-waku/#installation) for steps on adding `@waku/sdk` to your project.
6
6
7
7
## Create a Light Node
8
8
@@ -89,7 +89,7 @@ const ChatMessage = new protobuf.Type("ChatMessage")
89
89
```
90
90
91
91
:::info
92
-
Check out the [Protobuf installation](/guides/js-waku/#message-structure) guide for adding the `protobufjs` package to your project.
92
+
Have a look at the [Protobuf installation](/guides/js-waku/#message-structure) guide for adding the `protobufjs` package to your project.
You have successfully sent and received messages over the Waku Network using the `Light Push` and `Filter` protocols. Check out the [light-js](https://github.com/waku-org/js-waku-examples/tree/master/examples/light-js) and [light-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/light-chat) examples for working demos.
138
+
You have successfully sent and received messages over the Waku Network using the `Light Push` and `Filter` protocols. Have a look at the [light-js](https://github.com/waku-org/js-waku-examples/tree/master/examples/light-js) and [light-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/light-chat) examples for working demos.
The `timeFilter` option significantly reduces message retrieval performance. To optimize it, consider resuming message retrieval using a [cursor](#cursor) that starts from the last seen message.
196
+
The `timeFilter` option significantly reduces message retrieval performance. To optimise it, consider resuming message retrieval using a [cursor](#cursor) that starts from the last seen message.
197
197
:::
198
198
199
199
:::tip Congratulations!
200
-
You have successfully retrieved and filtered historical messages on a Light Node using the `Store` protocol. Check out the [store-js](https://github.com/waku-org/js-waku-examples/tree/master/examples/store-js) and [store-reactjs-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/store-reactjs-chat) examples for working demos.
200
+
You have successfully retrieved and filtered historical messages on a Light Node using the `Store` protocol. Have a look at the [store-js](https://github.com/waku-org/js-waku-examples/tree/master/examples/store-js) and [store-reactjs-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/store-reactjs-chat) examples for working demos.
Copy file name to clipboardexpand all lines: docs/guides/js-waku/use-waku-react.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -224,9 +224,9 @@ function App() {
224
224
```
225
225
226
226
:::info
227
-
To explore the available query options, check out the [Store Query Options](/guides/js-waku/store-retrieve-messages#store-query-options) guide.
227
+
To explore the available query options, have a look at the [Store Query Options](/guides/js-waku/store-retrieve-messages#store-query-options) guide.
228
228
:::
229
229
230
230
:::tip
231
-
You have successfully integrated `@waku/sdk` into a React application using the `@waku/react` package. Check out the [web-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/web-chat) example for a working demo.
231
+
You have successfully integrated `@waku/sdk` into a React application using the `@waku/react` package. Have a look at the [web-chat](https://github.com/waku-org/js-waku-examples/tree/master/examples/web-chat) example for a working demo.
Copy file name to clipboardexpand all lines: docs/guides/nodes-and-sdks.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ Ready to integrate Waku into your application for private, secure, censorship-fr
10
10
11
11
## Run a Waku Node
12
12
13
-
The Waku Network is a decentralized, permissionless system where anyone can run nodes, use the network, and contribute to its support.
13
+
The Waku Network is a decentralised, permissionless system where anyone can run nodes, use the network, and contribute to its support.
14
14
15
15
|| Description | Documentation |
16
16
| - | - | - |
@@ -43,6 +43,6 @@ Waku provides integrations tailored for mobile applications, enabling Waku to ru
43
43
|| Description | Documentation |
44
44
| - | - | - |
45
45
| JSON-RPC API |`JSON-RPC` API interface provided by `nwaku` and `go-waku` to interact with the Waku Network | COMING SOON |
46
-
|[@waku/react](https://www.npmjs.com/package/@waku/react)| React components and UI adapters designed for seamless integration with `@waku/sdk`|[Build React DApps Using @waku/react](/guides/js-waku/use-waku-react)|
46
+
|[@waku/react](https://www.npmjs.com/package/@waku/react)| React components and UI adapters designed for seamless integration with `@waku/sdk`|COMING SOON|
47
47
|[@waku/create-app](https://www.npmjs.com/package/@waku/create-app)| Starter kit to bootstrap your next `@waku/sdk` project from various example templates |[Bootstrap DApps Using @waku/create-app](/guides/js-waku/use-waku-create-app)|
48
48
|[nwaku-compose](https://github.com/alrevuelta/nwaku-compose)| Pre-configured Docker Compose setup for running and monitoring a `nwaku` node using Prometheus and Grafana |[Run Nwaku with Docker Compose](/guides/nwaku/run-docker-compose)|
Copy file name to clipboardexpand all lines: docs/guides/nwaku/build-source.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Build Nwaku from Source
3
3
---
4
4
5
-
This guide provides detailed steps to build a `nwaku` node from the source code to access the latest development version or a specific commit or release of `nwaku`. For your convenience, [download a pre-compiled binary](https://github.com/waku-org/nwaku/tags) instead.
5
+
This guide provides detailed steps to build a `nwaku` node from the source code to access the latest development version or a specific commit or release of `nwaku`. For your convenience, you may want to [download a pre-compiled binary](https://github.com/waku-org/nwaku/tags) instead.
6
6
7
7
:::info
8
8
- A minimum of 2GB of RAM is required to build `nwaku`.
Copy file name to clipboardexpand all lines: docs/guides/nwaku/configure-discovery.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -86,7 +86,7 @@ When Discv5 is enabled and used with [DNS Discovery](#configure-dns-discovery),
86
86
To enable [Peer Exchange](/overview/concepts/peer-exchange) in a `nwaku` node, use the following configuration options:
87
87
88
88
-`peer-exchange`: Enables `Peer Exchange` on the node as a responder (disabled by default).
89
-
-`peer-exchange-node` (optional): Multiaddr for bootstrap node that has the peer exchange protocol enabled.
89
+
-`peer-exchange-node` (optional): Multiaddr for bootstrap node with the peer exchange protocol enabled.
90
90
91
91
```bash
92
92
./build/wakunode2 \
@@ -108,5 +108,5 @@ For example, consider two `nwaku` nodes configured as a `server` (peer exchange
108
108
```
109
109
110
110
:::info
111
-
`nwaku` provides a [`relay-peer-exchange`](/guides/reference/node-config-options#relay-config) option via `libp2p` for peer exchange, allowing network growth through neighboring nodes. However, this feature can compromise security and network robustness, so we recommend only using it in high-trust environments.
111
+
`nwaku` provides a [`relay-peer-exchange`](/guides/reference/node-config-options#relay-config) option via `libp2p` for peer exchange, allowing network growth through neighbouring nodes. However, this feature can compromise security and network robustness, so we recommend only using it in high-trust environments.
Copy file name to clipboardexpand all lines: docs/guides/nwaku/run-docker-compose.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ cd nwaku-compose
21
21
22
22
## Configure the Setup
23
23
24
-
Modify the `docker-compose.yml` file to customize your node's configuration, including the [Docker image](https://hub.docker.com/r/statusteam/nim-waku/tags) and [nwaku arguments](/guides/reference/node-config-options).
24
+
Modify the `docker-compose.yml` file to customise your node's configuration, including the [Docker image](https://hub.docker.com/r/statusteam/nim-waku/tags) and [nwaku arguments](/guides/reference/node-config-options).
To configure your node using the provided configuration options, check out the [Node Configuration Methods](/guides/reference/node-config-methods) guide.
166
+
To configure your node using the provided configuration options, have a look at the [Node Configuration Methods](/guides/reference/node-config-methods) guide.
Copy file name to clipboardexpand all lines: docs/guides/run-nwaku-node.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ To run a node, you must have the `nwaku` binary. Nwaku provides multiple options
19
19
20
20
#### Build the Binary
21
21
22
-
You can build the node binary directly from the [nwaku source code](https://github.com/waku-org/nwaku). Check out the [Build Nwaku from Source](/guides/nwaku/build-source) guide to learn more.
22
+
You can build the node binary directly from the [nwaku source code](https://github.com/waku-org/nwaku). Have a look at the [Build Nwaku from Source](/guides/nwaku/build-source) guide to learn more.
23
23
24
24
#### Run Nwaku in Docker
25
25
@@ -45,7 +45,7 @@ Once you have gotten the `nwaku` binary, run it using the [default configuration
45
45
```
46
46
47
47
:::tip
48
-
For more advanced configurations like enabling other protocols or maintaining a consistent `PeerID`, check out the [Node Configuration Methods](/guides/reference/node-config-methods) guide.
48
+
For more advanced configurations like enabling other protocols or maintaining a consistent `PeerID`, have a look at the [Node Configuration Methods](/guides/reference/node-config-methods) guide.
Copy file name to clipboardexpand all lines: docs/overview/concepts/content-topics.md
+7-7
Original file line number
Diff line number
Diff line change
@@ -2,34 +2,34 @@
2
2
title: Content Topics
3
3
---
4
4
5
-
`Content Topics` are metadata strings set by developers on outgoing messages to facilitate protocol-level features like selectively processing incoming messages ([Relay](/overview/concepts/protocols#relay) or [Filter](/overview/concepts/protocols#filter)) and retrieving historical messages ([Store](/overview/concepts/protocols#store)) that meet specific filtering criteria. Check out the [WAKU2-TOPICS](https://rfc.vac.dev/spec/23/#content-topics) specification to learn more.
5
+
`Content Topics` are metadata strings set by developers on outgoing messages to facilitate protocol-level features like selectively processing incoming messages ([Relay](/overview/concepts/protocols#relay) or [Filter](/overview/concepts/protocols#filter)) and retrieving historical messages ([Store](/overview/concepts/protocols#store)) that meet specific filtering criteria. Have a look at the [WAKU2-TOPICS](https://rfc.vac.dev/spec/23/#content-topics) specification to learn more.
6
6
7
7
## Naming Format
8
8
9
9
Here is the recommended format for content topics:
-`application-name`: This is the unique name of your decentralized application (dApp) to prevent conflicts with other dApps.
13
+
-`application-name`: This is the unique name of your decentralised application (DApp) to prevent conflicts with other DApps.
14
14
-`version`: Typically starting at `1`, this field helps track breaking changes in your messages.
15
15
-`content-topic-name`: The specific name of the content topic used for filtering.
16
-
-`encoding`: The message encoding or serialization format, with [Protocol Buffers](https://protobuf.dev/) (`proto`) being the recommended choice.
16
+
-`encoding`: The message encoding or serialisation format, with [Protocol Buffers](https://protobuf.dev/) (`proto`) being the recommended choice.
17
17
18
-
For example, if your dApp is called `SuperCrypto` and it allows users to receive notifications and send private messages, you can consider using the following content topics:
18
+
For example, if your DApp is called `SuperCrypto` and it allows users to receive notifications and send private messages, you can consider using the following content topics:
19
19
20
20
-`/supercrypto/1/notification/proto`
21
21
-`/supercrypto/1/private-message/proto`
22
22
23
23
:::tip
24
-
While you can choose any encoding format for your `Content Topic`, we highly recommend using Protocol Buffers (`proto`) because of its efficiency. Choosing a lightweight format ensures optimal performance of your dApp.
24
+
While you can choose any encoding format for your `Content Topic`, we highly recommend using Protocol Buffers (`proto`) because of its efficiency. Choosing a lightweight format ensures optimal performance of your DApp.
25
25
:::
26
26
27
27
## Naming Considerations
28
28
29
-
When choosing a content topic, it is crucial to consider privacy implications. The `Filter`, `Store`, and `Light Push` protocols disclose content topics to peers, enabling said peer to link ip and content topic interests. `Relay` provides recipient anonymity thanks to `GossipSub`, but this may be lost if the content topic reveals information about the user.
29
+
When choosing a content topic, it is crucial to consider privacy implications. The `Filter`, `Store`, and `Light Push` protocols disclose content topics to peers, enabling said peer to link IP and content topic interests. `Relay` provides recipient anonymity thanks to `GossipSub`, but this may be lost if the content topic reveals information about the user.
30
30
31
31
:::info
32
-
Waku is developing privacy-preserving features like [Anonymous Filter Subscription](https://rfc.vac.dev/spec/12/#future-work) for the `Filter` protocol and [Anonymous Query](https://rfc.vac.dev/spec/13/#future-work) for the `Store` protocol to hide content topics from potential adversaries.
32
+
Waku is developing privacypreserving features like [Anonymous Filter Subscription](https://rfc.vac.dev/spec/12/#future-work) for the `Filter` protocol and [Anonymous Query](https://rfc.vac.dev/spec/13/#future-work) for the `Store` protocol to hide content topics from potential adversaries.
33
33
:::
34
34
35
35
You can preserve the anonymity of individual identities by increasing [k-anonymity](https://www.privitar.com/blog/k-anonymity-an-introduction/), where k is proportional to the network size (number of subscribers). This involves using a single content topic across the entire application or specific features such as notifications or private messages, allowing multiple users to share it.
Copy file name to clipboardexpand all lines: docs/overview/concepts/discv5.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,11 @@
2
2
title: Discv5
3
3
---
4
4
5
-
`Discv5` is a decentralized and efficient peer discovery mechanism for the Waku Network. It uses a [Distributed Hash Table (DHT)](https://en.wikipedia.org/wiki/Distributed_hash_table) for storing `ENR` records, providing resistance to censorship. `Discv5` offers a global view of participating nodes, enabling random sampling for load distribution. It uses bootstrap nodes as an entry point to the network, providing randomized sets of nodes for mesh expansion. Check out the [Discv5](https://rfc.vac.dev/spec/33/) specification to learn more.
5
+
`Discv5` is a decentralised and efficient peer discovery mechanism for the Waku Network. It uses a [Distributed Hash Table (DHT)](https://en.wikipedia.org/wiki/Distributed_hash_table) for storing `ENR` records, providing resistance to censorship. `Discv5` offers a global view of participating nodes, enabling random sampling for load distribution. It uses bootstrap nodes as an entry point to the network, providing randomised sets of nodes for mesh expansion. Have a look at the [Discv5](https://rfc.vac.dev/spec/33/) specification to learn more.
6
6
7
7
#### Pros
8
8
9
-
-Decentralized with random sampling from a global view.
9
+
-Decentralised with random sampling from a global view.
Copy file name to clipboardexpand all lines: docs/overview/concepts/dns-discovery.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -2,9 +2,9 @@
2
2
title: DNS Discovery
3
3
---
4
4
5
-
Built upon the foundation of [EIP-1459: Node Discovery via DNS](https://eips.ethereum.org/EIPS/eip-1459), DNS Discovery allows the retrieval of an `ENR` tree from the `TXT` field of a domain name. This innovative approach enables the storage of essential node connection details, including IP, port, and multiaddr, using the standardized[ENR format](https://rfc.vac.dev/spec/31/).
5
+
Built upon the foundation of [EIP-1459: Node Discovery via DNS](https://eips.ethereum.org/EIPS/eip-1459), DNS Discovery allows the retrieval of an `ENR` tree from the `TXT` field of a domain name. This innovative approach enables the storage of essential node connection details, including IP, port, and multiaddr, using the standardised[ENR format](https://rfc.vac.dev/spec/31/).
6
6
7
-
This bootstrapping method allows anyone to register and publish a domain name for the network, promoting increased decentralization.
7
+
This bootstrapping method allows anyone to register and publish a domain name for the network, promoting increased decentralisation.
Copy file name to clipboardexpand all lines: docs/overview/concepts/network-domains.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Network Domains
3
3
---
4
4
5
-
Waku is a unified and cohesive entity that offers a rich ecosystem with three distinct network interaction domains. These domains serve specialized purposes and contribute to the robust functionality of Waku, forming its foundation.
5
+
Waku is a unified and cohesive entity that offers a rich ecosystem with three distinct network interaction domains. These domains serve specialised purposes and contribute to the robust functionality of Waku, forming its foundation.
6
6
7
7
## Discovery Domain
8
8
@@ -16,7 +16,7 @@ Waku employs gossiping through [Relay](/overview/concepts/protocols#relay) to di
16
16
17
17
## Request/Response Domain
18
18
19
-
Waku provides a set of protocols to optimize its performance in resource-limited environments like low bandwidth or mostly offline scenarios for multiple purposes.
19
+
Waku provides a set of protocols to optimise its performance in resource-limited environments like low bandwidth or mostly offline scenarios for multiple purposes.
20
20
21
21
-[Store](/overview/concepts/protocols#store) enables the retrieval of historical messages.
22
22
-[Filter](/overview/concepts/protocols#filter) efficiently retrieves a subset of messages to conserve bandwidth.
Copy file name to clipboardexpand all lines: docs/overview/concepts/peer-discovery.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Peer Discovery
3
3
---
4
4
5
-
When initializing a Waku node, it must connect with other peers to enable message sending, receiving, and retrieval. To achieve this, a discovery mechanism is employed to locate other peers in the network. This process is known as bootstrapping.
5
+
When initialising a Waku node, it must connect with other peers to enable message sending, receiving, and retrieval. To achieve this, a discovery mechanism is employed to locate other peers in the network. This process is known as bootstrapping.
6
6
7
7
Once a connection is established, the node must actively seek out additional peers to have:
Copy file name to clipboardexpand all lines: docs/overview/concepts/peer-exchange.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -2,16 +2,16 @@
2
2
title: Peer Exchange
3
3
---
4
4
5
-
The primary objective of this protocol is to facilitate peer connectivity for resource-limited devices without relying on `Discv5`. The peer exchange protocol enables light nodes to request peers from other nodes within the network. Check out the [Peer Exchange](https://rfc.vac.dev/spec/34/) specification to learn more.
5
+
The primary objective of this protocol is to facilitate peer connectivity for resource-limited devices without relying on `Discv5`. The peer exchange protocol enables light nodes to request peers from other nodes within the network. Have a look at the [Peer Exchange](https://rfc.vac.dev/spec/34/) specification to learn more.
6
6
7
7
:::info
8
-
`Peer Exchange` enables requesting random peers from other network nodes without revealing information about their connectivity or neighborhood.
8
+
`Peer Exchange` enables requesting random peers from other network nodes without revealing information about their connectivity or neighbourhood.
9
9
:::
10
10
11
11
#### Pros
12
12
13
13
- Low resource requirements.
14
-
-Decentralized with random sampling of nodes from a global view using `Discv5`.
14
+
-Decentralised with random sampling of nodes from a global view using `Discv5`.
Copy file name to clipboardexpand all lines: docs/overview/concepts/protocols.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -10,27 +10,27 @@ Waku takes a modular approach, providing a range of protocols that enable applic
10
10
11
11
## [RLN Relay](https://rfc.vac.dev/spec/17/)
12
12
13
-
`RLN Relay` protocol extends the `Relay` protocol by using [Rate Limit Nullifiers (RLN)](https://rfc.vac.dev/spec/32/) to provide efficient and economic spamprevention. It enforces a rate limit on messages over time for all peers in the network, economically preventing spam, and imposes financial penalties and network removal for spammers. You can find more details in the [RLN Relay blog post](https://vac.dev/rln-relay).
13
+
`RLN Relay` protocol extends the `Relay` protocol by using [Rate Limit Nullifiers (RLN)](https://rfc.vac.dev/spec/32/) to provide efficient and economic spam-prevention. It enforces a rate limit on messages over time for all peers in the network, economically preventing spam, and imposes financial penalties and network removal for spammers. You can find more details in the [RLN Relay blog post](https://vac.dev/rln-relay).
14
14
15
15
## [Filter](https://rfc.vac.dev/spec/12/)
16
16
17
17
`Filter` protocol allows light nodes to selectively subscribe to specific messages relayed by other peers using [content topics](/overview/concepts/content-topics). It is designed to be a lightweight alternative for accessing the `Relay` network, particularly tailored for devices with limited bandwidth.
18
18
19
19
:::info
20
-
`Filter` protocol helps optimize bandwidth usage, but it has fewer privacy guarantees as it must disclose the content topic to its peers to retrieve messages.
20
+
`Filter` protocol helps optimise bandwidth usage, but it has fewer privacy guarantees as it must disclose the content topic to its peers to retrieve messages.
21
21
:::
22
22
23
23
## [Store](https://rfc.vac.dev/spec/13/)
24
24
25
25
`Store` protocol is responsible for storing messages relayed in the network, making it possible to query and retrieve them later. This functionality benefits offline peers by enabling them to retrieve missed messages upon reconnection.
26
26
27
27
:::info
28
-
Using `Relay` and `Filter` protocols is recommended when a node is online, as `Store` does not guarantee data availability. The `Store` protocol is suitable for retrieving messages when connecting to the network, like when a dApp starts.
28
+
Using `Relay` and `Filter` protocols is recommended when a node is online, as `Store` does not guarantee data availability. The `Store` protocol is suitable for retrieving messages when connecting to the network, like when a DApp starts.
29
29
:::
30
30
31
31
## [Light Push](https://rfc.vac.dev/spec/19/)
32
32
33
-
`Light Push` is a [Request/Response](/overview/concepts/network-domains#requestresponse-domain) protocol for nodes with limited bandwidth and short connection windows. It allows a client to receive an acknowledgment when sending messages, indicating that at least one peer has received them. Subsequently, the remote peer forwards these messages to the `Relay` network.
33
+
`Light Push` is a [Request/Response](/overview/concepts/network-domains#requestresponse-domain) protocol for nodes with limited bandwidth and short connection windows. It allows a client to receive an acknowledgement when sending messages, indicating that at least one peer has received them. Subsequently, the remote peer forwards these messages to the `Relay` network.
34
34
35
35
:::info
36
36
While the `Light Push` protocol acknowledges the receipt by the remote peer, it does not guarantee network-wide propagation.
Copy file name to clipboardexpand all lines: docs/overview/history.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -12,10 +12,10 @@ import History from "@site/diagrams/_history.md";
12
12
13
13
### 2013
14
14
15
-
The Ethereum White Paper was published, unveiling the holy trinity of Web3, comprising:
15
+
The Ethereum White Paper was published, unveiling the holy trinity of web3, comprising:
16
16
17
17
- Ethereum for consensus.
18
-
- Swarm for decentralized storage.
18
+
- Swarm for decentralised storage.
19
19
- Whisper for peer-to-peer messaging.
20
20
21
21
### 2015-2018
@@ -24,15 +24,15 @@ The development of the Whisper protocol lagged behind the advancements made by t
24
24
25
25
### 2018
26
26
27
-
Due to the lack of progress made on Whisper and growing concerns around scalability, [Vac](https://vac.dev/) was established to focus on researching and developing more scalable peer-to-peer messaging solutions.
27
+
Owing to the lack of progress made on Whisper and growing concerns around scalability, [Vac](https://vac.dev/) was established to focus on researching and developing more scalable peer-to-peer messaging solutions.
28
28
29
29
### 2020
30
30
31
31
`Waku v1` replaces Whisper as the messaging protocol in Status, resulting in the following:
32
32
33
33
- Enhanced performance.
34
34
- Better scalability.
35
-
-Ability to work in resource-limited environments.
35
+
-Capability to work in resource-limited environments.
36
36
- And many more.
37
37
38
38
### 2021
@@ -41,4 +41,4 @@ Due to the lack of progress made on Whisper and growing concerns around scalabil
41
41
42
42
### Present Day
43
43
44
-
Waku has continued to evolve and enhance itself, enabling privacy-focused and uncompromised Web3 communication at scale.
44
+
Waku has continued to evolve and enhance itself, enabling privacy-focused and uncompromised web3 communication at scale.
Copy file name to clipboardexpand all lines: docs/overview/index.md
+8-8
Original file line number
Diff line number
Diff line change
@@ -7,15 +7,15 @@ slug: /
7
7
Waku has risks and limitations as it is still developing and preparing for extensive adoption. However, it is already demonstrating its capabilities by [powering various applications](/powered-by-waku). [Join our community](/community) to stay updated on our progress.
8
8
:::
9
9
10
-
Waku is a family of robust and censorship-resistant communication protocols enabling privacy-focused messaging for Web3 applications. It is designed to operate in resource-limited environments but can also be used as a node or desktop application.
10
+
Waku is a family of robust and censorshipresistant communication protocols enabling privacy-focused messaging for web3 applications. It is designed to operate in resource-limited environments but can also be used as a node or desktop application.
11
11
12
-
Waku protocols ensure that users communication remains censorship-resistant and privacy-preserving, giving them complete control over their data. By integrating Waku into your dApp, you can add decentralized communication features to your application without compromising security or privacy.
12
+
Waku protocols ensure that users' communication remains censorshipresistant and privacypreserving, giving them complete control over their data. By integrating Waku into your DApp, you can add decentralised communication features to your application without compromising security or privacy.
13
13
14
14
## Motivation and Goals
15
15
16
16
The Waku family of protocols is designed for diverse applications due to their properties, such as:
17
17
18
-
### Generalized
18
+
### Generalised
19
19
20
20
Waku aims to solve the problem of ephemeral messaging between subsystems and nodes through a flexible, secure, and private protocol. It supports human-to-human and machine-to-machine messaging scenarios but is not designed for data storage.
21
21
@@ -31,7 +31,7 @@ Waku is suitable for applications that require a peer-to-peer approach, offering
31
31
32
32
Waku can run on any platform or environment, even settings with limited resources like bandwidth, CPU, memory, disk, battery, etc. It can also function when the nodes are not publicly connected or are mostly offline.
33
33
34
-
### Privacy-Preserving
34
+
### PrivacyPreserving
35
35
36
36
Waku can cater to applications that require privacy guarantees, such as:
37
37
@@ -41,7 +41,7 @@ Waku can cater to applications that require privacy guarantees, such as:
41
41
42
42
### Modular Design
43
43
44
-
Waku nodes are adaptive and can be customized based on the application's requirements and environment. Users can adjust multiple parameters, such as:
44
+
Waku nodes are adaptive and can be customised based on the application's requirements and environment. Users can adjust multiple parameters, such as:
45
45
46
46
- Low privacy/low resource usage vs. high privacy/increased latency + bandwidth usage.
47
47
- Providing resources to the network vs. consuming resources.
@@ -52,11 +52,11 @@ These options are part of the [Anonymity Trilemma](https://eprint.iacr.org/2017/
52
52
53
53
### Service Network
54
54
55
-
Waku provides developers with a convenient solution for building decentralized communication systems, eliminating the need to build a peer-to-peer network from scratch. Node operators can offer multiple services, such as:
55
+
Waku provides developers with a convenient solution for building decentralised communication systems, eliminating the need to build a peer-to-peer network from scratch. Node operators can offer multiple services, such as:
56
56
57
57
- Storing messages for offline devices.
58
58
- Enabling bandwidth-saving access to the [Relay](/overview/concepts/protocols#relay) network through [Light Push](/overview/concepts/protocols#light-push) and [Filter](/overview/concepts/protocols#filter) protocols.
59
-
- Implementing spamprevention and DoSmitigation features.
59
+
- Implementing spam-prevention and DoS-mitigation features.
60
60
- Providing a resilient and shared [Relay](/overview/concepts/protocols#relay) infrastructure that applications can leverage to enhance reliability and efficiency.
61
61
62
62
## How Does Waku Work?
@@ -67,7 +67,7 @@ The [Relay](/overview/concepts/protocols#relay) protocol is the foundation of th
67
67
2. Providing solutions for encrypted communication, such as symmetric encryption, ECIES/asymmetric encryption, and noise handshake-based key turns.
68
68
3. Preserving bandwidth usage for resource-limited environments.
69
69
4. Implementing economic spam protection (rate limits) while ensuring privacy.
70
-
5. Developing methods to protect against mass deanonymization (currently being researched).
70
+
5. Developing methods to protect against mass deanonymisation (currently being researched).
71
71
6. Designing strategies to scale `Relay/GossipSub` securely.
72
72
73
73
If you want to learn more about how Waku works, the [WAKU2 RFC](https://rfc.vac.dev/spec/10/) provides an in-depth look under the hood.
Copy file name to clipboardexpand all lines: docs/overview/reference/glossary.md
+8-8
Original file line number
Diff line number
Diff line change
@@ -16,15 +16,15 @@ A content topic is a string attached to [messages](#waku-message) to enable [pro
16
16
17
17
### [Dappnode](https://dappnode.com/)
18
18
19
-
Dappnode is an open-source platform that simplifies the hosting and management of decentralized applications and blockchain nodes, including [Waku](#waku).
19
+
Dappnode is an open-source platform that simplifies the hosting and management of decentralised applications and blockchain nodes, including [Waku](#waku).
20
20
21
21
### [Discv5](/overview/concepts/discv5)
22
22
23
23
Discv5 is a [peer discovery](#peer-discovery) mechanism using a Distributed Hash Table (DHT) to store [ENR](#enr) records, providing censorship resistance, load distribution, and enhanced network resilience.
DNS discovery is a [peer discovery](#peer-discovery) mechanism that allows the retrieval of an [ENR](#enr) tree from the TXT field of a domain name, enabling the storage of [node](#node) connection details and promoting decentralization.
27
+
DNS discovery is a [peer discovery](#peer-discovery) mechanism that allows the retrieval of an [ENR](#enr) tree from the TXT field of a domain name, enabling the storage of [node](#node) connection details and promoting decentralisation.
28
28
29
29
### [ENR](https://rfc.vac.dev/spec/31/)
30
30
@@ -36,27 +36,27 @@ Filter is a [protocol](#protocol) that enables [light nodes](#light-node) to sel
GossipSub is a [protocol](#protocol) for efficient and scalable information dissemination in decentralized networks commonly used in blockchain systems.
39
+
GossipSub is a [protocol](#protocol) for efficient and scalable information dissemination in decentralised networks commonly used in blockchain systems.
40
40
41
41
### [Libp2p](https://libp2p.io/)
42
42
43
-
Libp2p is a modular network stack and protocol suite that allows developers to build decentralized, peer-to-peer applications across various network protocols.
43
+
Libp2p is a modular network stack and protocol suite that allows developers to build decentralised, peer-to-peer applications across various network protocols.
44
44
45
45
### Light Node
46
46
47
47
A light node is a [resource-limited](#resource-limited) device or client that leverages service nodes to access the [Relay](#relay) network.
Light push is a protocol enabling [light nodes](#light-node) to send [messages](#waku-message) to the [Relay](#relay) network and receive acknowledgments confirming that a [peer](#peer) has received them.
51
+
Light push is a protocol enabling [light nodes](#light-node) to send [messages](#waku-message) to the [Relay](#relay) network and receive acknowledgements confirming that a [peer](#peer) has received them.
52
52
53
53
### Mostly Offline
54
54
55
55
Mostly offline devices are clients who spend most of their time offline or disconnected from the internet and only occasionally to the internet and [Waku Network](#waku). Examples include browsers and mobile phones.
56
56
57
57
### Node
58
58
59
-
A node is a device or client that implements Waku [protocols](#protocol) and leverages the [Waku Network](#waku) to enable secure and private peer-to-peer Web3 communication.
59
+
A node is a device or client that implements Waku [protocols](#protocol) and leverages the [Waku Network](#waku) to enable secure and private peer-to-peer web3 communication.
60
60
61
61
### Node Key
62
62
@@ -100,7 +100,7 @@ Rate Limit Nullifiers (RLN) are a construct based on zero-knowledge proofs that
100
100
101
101
### [Relay](/overview/concepts/protocols#relay)
102
102
103
-
Relay is a [protocol](#protocol) that extends the [GossipSub protocol](#gossipsub) to enable secure and censorship-resistant [message](#waku-message) sending and receiving among [peers](#peer) while preserving privacy. It also scales the [Waku Network](#waku) to accommodate many nodes efficiently.
103
+
Relay is a [protocol](#protocol) that extends the [GossipSub protocol](#gossipsub) to enable secure and censorshipresistant [message](#waku-message) sending and receiving among [peers](#peer) while preserving privacy. It also scales the [Waku Network](#waku) to accommodate many nodes efficiently.
104
104
105
105
### Resource-Limited
106
106
@@ -124,7 +124,7 @@ A transport is a network mechanism that establishes connections between [peers](
124
124
125
125
### Waku
126
126
127
-
Waku is a family of private, secure, decentralized, and peer-to-peer Web3 communication [protocols](#protocol) designed to operate in [resource-limited](#resource-limited) environments and suitable for [node](#node) or desktop application use. Additionally, these protocols collectively form the Waku Network.
127
+
Waku is a family of private, secure, decentralised, and peer-to-peer web3 communication [protocols](#protocol) designed to operate in [resource-limited](#resource-limited) environments and suitable for [node](#node) or desktop application use. Additionally, these protocols collectively form the Waku Network.
Copy file name to clipboardexpand all lines: docs/overview/reference/research-in-progress.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -6,15 +6,15 @@ The following features are currently experimental and under research and initial
6
6
7
7
## Economic Spam Resistance
8
8
9
-
We aim to enable an incentivized spam protection technique to enhance `Relay` by using [Rate Limit Nullifiers (RLN)](https://rfc.vac.dev/spec/32/). In this advanced method, peers are limited to a certain messaging rate per epoch, and an immediate financial penalty is enforced for spammers who break this rate. You can find more details in the [RLN Relay blog post](https://vac.dev/rln-relay).
9
+
We aim to enable an incentivised spam protection technique to enhance `Relay` by using [Rate Limit Nullifiers (RLN)](https://rfc.vac.dev/spec/32/). In this advanced method, peers are limited to a certain messaging rate per epoch, and an immediate financial penalty is enforced for spammers who break this rate. You can find more details in the [RLN Relay blog post](https://vac.dev/rln-relay).
10
10
11
11
We have prepared a PoC implementation of this method in JS: <https://examples.waku.org/rln-js/>
12
12
13
-
## Prevention of Denial of Service (DoS) and Node Incentivization
13
+
## Prevention of Denial of Service (DoS) and Node Incentivisation
14
14
15
15
Denial of service signifies the case where an adversarial peer exhausts another node's service capacity (e.g., by making a large number of requests) and makes it unavailable to the rest of the system. RnD on DoS attack mitigation can tracked from here: <https://github.com/vacp2p/research/issues/148>.
16
16
17
-
In a nutshell, peers have to pay for the service they obtain from each other. In addition to incentivizing the service provider, accounting also makes DoS attacks costly for malicious peers. The accounting model can be used in `Store` and `Filter` to protect against DoS attacks.
17
+
In a nutshell, peers have to pay for the service they obtain from each other. In addition to incentivising the service provider, accounting also makes DoS attacks costly for malicious peers. The accounting model can be used in `Store` and `Filter` to protect against DoS attacks.
18
18
19
19
Additionally, along with RLN, this gives node operators who provide a useful service to the network an incentive to perform that service. Read more here: <https://vac.dev/building-privacy-protecting-infrastructure>
The spam protection feature in `Relay` ensures that no adversary can flood the system with many messages, intentionally or not, regardless of the content's validity or usefulness. This protection is achieved through the [scoring mechanism](https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.1.md#spam-protection-measures) of `GossipSub v1.1`. Peers assign scores to their connections based on their behavior and remove peers with low scores.
22
+
The spam protection feature in `Relay` ensures that no adversary can flood the system with many messages, intentionally or not, regardless of the content's validity or usefulness. This protection is achieved through the [scoring mechanism](https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.1.md#spam-protection-measures) of `GossipSub v1.1`. Peers assign scores to their connections based on their behaviour and remove peers with low scores.
23
23
24
24
Ongoing research is being conducted, including developing [Rate Limit Nullifiers (RLN)](/overview/concepts/protocols#rln-relay), which can be explored further at: <https://github.com/vacp2p/research/issues/148>.
Copy file name to clipboardexpand all lines: docs/overview/reference/waku-vs-libp2p.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Since Waku is built on top of libp2p, they share a lot of concepts and terminolo
6
6
7
7
## Waku as a Service Network
8
8
9
-
Waku intends to incentivize mechanisms to run nodes, but it is not part of libp2p's scope. Additionally, users or developers do not have to deploy their infra as a prerequisite to use Waku. It is a service network. However, you are encouraged to [run a node](/guides/nodes-and-sdks#run-a-waku-node) to support and decentralize the network.
9
+
Waku intends to incentivise mechanisms to run nodes, but it is not part of libp2p's scope. Additionally, users or developers do not have to deploy their infrastructure as a prerequisite to use Waku. It is a service network. However, you are encouraged to [run a node](/guides/nodes-and-sdks#run-a-waku-node) to support and decentralise the network.
Copy file name to clipboardexpand all lines: docs/overview/use-cases.md
+9-9
Original file line number
Diff line number
Diff line change
@@ -2,19 +2,19 @@
2
2
title: Use Cases
3
3
---
4
4
5
-
Waku is a decentralized communication network, facilitating secure and private person-to-person and machine-to-machine communication without a central authority. It supports various use cases, including but not limited to:
5
+
Waku is a decentralised communication network, facilitating secure and private person-to-person and machine-to-machine communication without a central authority. It supports various use cases, including but not limited to:
6
6
7
7
### Chat Messengers
8
8
9
-
Waku can be used as the communication layer when building a private, decentralized, and censorship-resistant messenger.
9
+
Waku can be used as the communication layer when building a private, decentralised, and censorshipresistant messenger.
With Waku, you can create, answer, and view censorship-resistant polls, promoting a democratic and transparent voting environment immune to manipulation and censorship.
17
+
With Waku, you can create, answer, and view censorshipresistant polls, promoting a democratic and transparent voting environment immune to manipulation and censorship.
18
18
19
19
#### Demos
20
20
@@ -42,19 +42,19 @@ To save on gas fees, votes for proposals submitted on the blockchain can be exch
42
42
43
43
### Signature Exchange for Multi-Signature Wallets
44
44
45
-
Waku can enable multiple owners of a given multi-signature wallet to exchange signatures in a decentralized, private, and censorship-resistant manner, allowing for the approval of transactions.
45
+
Waku can enable multiple owners of a given multi-signature wallet to exchange signatures in a decentralised, private, and censorshipresistant manner, allowing for the approval of transactions.
46
46
47
47
### Game Mechanics Communication
48
48
49
-
Waku can be used as the communication layer for a peer-to-peer, decentralized game, eliminating the need for a centralized infrastructure for gameplay communications.
49
+
Waku can be used as the communication layer for a peer-to-peer, decentralised game, eliminating the need for a centralised infrastructure for gameplay communications.
dApp operators can use communication between a user's wallet and their dApp to notify users (e.g., governance token holders can be notified to vote on a proposal) or to request transaction signatures from the wallet.
57
+
DApp operators can use communication between a user's wallet and their DApp to notify users (e.g., governance token holders can be notified to vote on a proposal) or to request transaction signatures from the wallet.
58
58
59
59
#### Demos
60
60
@@ -65,7 +65,7 @@ dApp operators can use communication between a user's wallet and their dApp to n
65
65
66
66
Waku can broadcast and aggregate Layer 2 transactions to enhance privacy, anonymity, and resilience. Aggregating transactions reduces network load and improves scalability, ensuring a more robust Layer 2 ecosystem.
67
67
68
-
### Generalized Marketplaces
68
+
### Generalised Marketplaces
69
69
70
70
Waku can enable users to offer, bid, accept, and trade goods and services, making it possible to create ride-sharing or trading apps.
71
71
@@ -75,4 +75,4 @@ Waku can enable users to offer, bid, accept, and trade goods and services, makin
75
75
76
76
### Social Media Platforms
77
77
78
-
While chat messengers are a type of social media that can be decentralized and made censorship-resistant through Waku, other forms of social media, such as news feeds, blog posts, and audio or video sharing, can also benefit from using Waku.
78
+
While chat messengers are a type of social media that can be decentralised and made censorshipresistant through Waku, other forms of social media, such as news feeds, blog posts, and audio or video sharing, can also benefit from using Waku.
Copy file name to clipboardexpand all lines: docs/overview/why-waku.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -2,15 +2,15 @@
2
2
title: Why Waku?
3
3
---
4
4
5
-
Present-day communication is predominantly centralized, enabling significant third-party intervention, with profit motives overshadowing principles and downplaying censorship and privacy concerns. This shift leads to the exploitation and unauthorized use of user data in the surveillance economy, where data ownership is no longer in the hands of individuals.
5
+
Present-day communication is predominantly centralised, enabling significant third-party intervention, with profit motives overshadowing principles and downplaying censorship and privacy concerns. This shift leads to the exploitation and unauthorised use of user data in the surveillance economy, where data ownership is no longer in the hands of individuals.
6
6
7
-
Waku transforms how individuals communicate and manage data by offering a scalable, decentralized solution that grants ultimate control.
7
+
Waku transforms how individuals communicate and manage data by offering a scalable, decentralised solution that grants ultimate control.
8
8
9
9
- Waku improves upon Whisper's capabilities by overcoming limitations and addressing functional gaps.
10
10
- Provides a public infrastructure for the Ethereum and multi-chain ecosystem, serving as a common good.
11
11
- Waku is not confined to a particular blockchain.
12
12
- Modular, adaptable, configurable, and can cater to various use cases.
13
-
- Enables developers to decentralize communication in their dApps or move actions off-chain while maintaining decentralization.
13
+
- Enables developers to decentralise communication in their DApps or move actions off-chain while maintaining decentralisation.
14
14
- Designed to run on various platforms, including mobile devices, cloud environments, web browsers, desktop apps, or even a [Dappnode](https://dappnode.com/)!
15
15
16
16
## Why Waku is Necessary
@@ -19,6 +19,6 @@ Waku transforms how individuals communicate and manage data by offering a scalab
19
19
| - | - | - |
20
20
|**Scalability**| Whisper does not scale very well, specifically when it comes to bandwidth usage on mobile devices. | Uses GossipSub and Content Topics. |
21
21
|**Spam Resistance**| Proof of work requires too much battery and compute power making it a poor mechanism for heterogeneous nodes. | Uses innovative p2p economic spam protection mechanism RLN Relay. |
22
-
|**Incentivization Infrastructure**| There is no incentive to run a Whisper node. | Research in progress to design incentivization for node operators. |
23
-
|**Formal Specification/Documentation**| Lack of formal and unambiguous specification. | The specs and docs are open-source and licensed under CC0, making them freely available for anyone to read, modify and improve without restrictions. |
22
+
|**Incentivisation Infrastructure**| There is no incentive to run a Whisper node. | Research in progress to design incentivisation for node operators. |
23
+
|**Formal Specification/Documentation**| Lack of formal and unambiguous specification. | The specs and docs are open-source and licenced under CC0, making them freely available for anyone to read, modify and improve without restrictions. |
24
24
|**Portability**| Runs over devp2p which limits where Whisper can run and how. | Waku is built using libp2p, making it easy to run Waku anywhere. |
Copy file name to clipboardexpand all lines: docs/presentations.md
+12-12
Original file line number
Diff line number
Diff line change
@@ -10,9 +10,9 @@ title: Watch Our Presentations
10
10
11
11
<iframeclass="yt-video"src="https://www.youtube.com/embed/dMxs5GcbgG4"title="Waku Workshop: Getting Started with Waku by Alvaro Revuelta"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
12
12
13
-
## Hashing it Out: Decentralized Messaging
13
+
## Hashing it Out: Decentralised Messaging
14
14
15
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/vmx_oOb2On0"title="Hashing it Out: Decentralized Messaging by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
15
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/vmx_oOb2On0"title="Hashing it Out: Decentralised Messaging by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
<iframeclass="yt-video"src="https://www.youtube.com/embed/CW1DYJifdhs"title="Building Privacy-Protecting Infrastructure by Oskar Thorén"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
28
28
29
-
## Secureum TrustX - Waku: Enabling a New Dimension for dApps
29
+
## Secureum TrustX - Waku: Enabling a New Dimension for DApps
30
30
31
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/GXU5Fd6gMVw?start=21700"title="Secureum TrustX - Waku: Enabling a New Dimension for dApps by Corey Petty"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
31
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/GXU5Fd6gMVw?start=21700"title="Secureum TrustX - Waku: Enabling a New Dimension for DApps by Corey Petty"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
32
32
33
-
## Waku: Enabling a New Dimension for dApps
33
+
## Waku: Enabling a New Dimension for DApps
34
34
35
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/OdXtMD-hgdg"title="Waku: enabling a new dimension for dApps by Corey Petty"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
35
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/OdXtMD-hgdg"title="Waku: enabling a new dimension for DApps by Corey Petty"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
36
36
37
-
## The Next Level of Decentralization Messaging in Web3
37
+
## The Next Level of Decentralisation Messaging in Web3
38
38
39
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/1QjxqrLO8WA"title="The Next Level of Decentralization Messaging in Web3 by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
39
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/1QjxqrLO8WA"title="The Next Level of Decentralisation Messaging in Web3 by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
40
40
41
41
## Build with Waku & DappConnect
42
42
43
43
<iframeclass="yt-video"src="https://www.youtube.com/embed/ooRyn4aXsrM"title="EthOnline Status Bounty - Build with Waku & DappConnect by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
44
44
45
-
## DappConnect: Enabling Decentralized Communications Using Waku
45
+
## DappConnect: Enabling Decentralised Communications Using Waku
46
46
47
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/rQOp3qoDF0g"title="DappConnect: Enabling decentralized communications using Waku by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
47
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/rQOp3qoDF0g"title="DappConnect: Enabling decentralised communications using Waku by Franck Royer"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
48
48
49
-
## DappConnect: Decentralized Communication Using Waku
49
+
## DappConnect: Decentralised Communication Using Waku
50
50
51
-
<iframeclass="yt-video"src="https://www.youtube.com/embed/CBknF-6Z-Ds"title="DappConnect: Decentralized communication using Waku"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
51
+
<iframeclass="yt-video"src="https://www.youtube.com/embed/CBknF-6Z-Ds"title="DappConnect: Decentralised communication using Waku"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
0 commit comments