mirror of
https://github.com/logos-messaging/docs.waku.org.git
synced 2026-01-09 16:23:12 +00:00
move research folder under learn: side bar and buttons
This commit is contained in:
parent
52b2f62c39
commit
3ac8029b1f
@ -13,7 +13,7 @@ If you do not set up a bootstrap node or discovery mechanism, your node will not
|
|||||||
:::
|
:::
|
||||||
|
|
||||||
:::tip
|
:::tip
|
||||||
Until [node incentivisation](/learn/research#prevention-of-denial-of-service-dos-and-node-incentivisation) is in place, you should [operate extra nodes](/#run-a-waku-node) alongside the ones provided by the Waku Network. When running a node, we recommend using the [DNS Discovery and Static Peers](#configure-dns-discovery-and-static-peers) configuration to connect to both the Waku Network and your node.
|
Until [node incentivisation](/learn/research#prevention-of-denial-of-service-dos-and-node-incentivisation) is in place, you should [operate extra nodes](/run-node) alongside the ones provided by the Waku Network. When running a node, we recommend using the [DNS Discovery and Static Peers](#configure-dns-discovery-and-static-peers) configuration to connect to both the Waku Network and your node.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Default bootstrap method
|
## Default bootstrap method
|
||||||
|
|||||||
2
docs/build/javascript/index.md
vendored
2
docs/build/javascript/index.md
vendored
@ -108,7 +108,7 @@ Have a look at the quick start guide and comprehensive tutorials to learn how to
|
|||||||
| [Manage Your Filter Subscriptions](/build/javascript/manage-filter) | Learn how to manage [filter subscriptions](/learn/concepts/protocols#filter) and handle node disconnections in your application |
|
| [Manage Your Filter Subscriptions](/build/javascript/manage-filter) | Learn how to manage [filter subscriptions](/learn/concepts/protocols#filter) and handle node disconnections in your application |
|
||||||
|
|
||||||
:::tip
|
:::tip
|
||||||
Until [node incentivisation](/learn/research#prevention-of-denial-of-service-dos-and-node-incentivisation) is in place, you should [operate extra nodes](/#run-a-waku-node) alongside the ones provided by the Waku Network. When running a node, we recommend using the [DNS Discovery and Static Peers](/build/javascript/configure-discovery#configure-dns-discovery-and-static-peers) configuration to connect to both the Waku Network and your node.
|
Until [node incentivisation](/learn/research#prevention-of-denial-of-service-dos-and-node-incentivisation) is in place, you should [operate extra nodes](/run-node/) alongside the ones provided by the Waku Network. When running a node, we recommend using the [DNS Discovery and Static Peers](/build/javascript/configure-discovery#configure-dns-discovery-and-static-peers) configuration to connect to both the Waku Network and your node.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Get help and report issues
|
## Get help and report issues
|
||||||
|
|||||||
@ -11,7 +11,6 @@ Waku is a family of robust, censorship-resistant, peer-to-peer communication pro
|
|||||||
<a href="/build/javascript/" class="button button--primary">Start Building</a>
|
<a href="/build/javascript/" class="button button--primary">Start Building</a>
|
||||||
<a href="/run-node/" class="button button--primary">Run a Node</a>
|
<a href="/run-node/" class="button button--primary">Run a Node</a>
|
||||||
<a href="/learn/" class="button button--primary">Learn More</a>
|
<a href="/learn/" class="button button--primary">Learn More</a>
|
||||||
<a href="/research/" class="button button--primary">Explore Research</a>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@ hide_table_of_contents: true
|
|||||||
displayed_sidebar: learn
|
displayed_sidebar: learn
|
||||||
---
|
---
|
||||||
|
|
||||||
Waku applications have the flexibility to embed bootstrap node addresses directly into their codebase. Developers can either use static peers operated by Status or [run a node](/#run-a-waku-node).
|
Waku applications have the flexibility to embed bootstrap node addresses directly into their codebase. Developers can either use static peers operated by Status or [run a node](/run-node).
|
||||||
|
|
||||||
#### Pros
|
#### Pros
|
||||||
|
|
||||||
|
|||||||
@ -26,9 +26,9 @@ You can also read more about the ongoing challenges the Waku team is working on
|
|||||||
|
|
||||||
## Research resources
|
## Research resources
|
||||||
|
|
||||||
[**Research and Studies**](./research-and-studies): Protocol simulations and theoretical analysis to support the design of Waku protocols. The protocol definitions are on the [Waku RFCs](https://rfc.vac.dev/waku) website.
|
[**Research and Studies**](/learn/research/research-and-studies/incentivisation): Protocol simulations and theoretical analysis to support the design of Waku protocols. The protocol definitions are on the [Waku RFCs](https://rfc.vac.dev/waku) website.
|
||||||
|
|
||||||
[**Benchmarks**](./benchmarks): Results of implementations and engineering-related benchmarks for Waku clients.
|
[**Benchmarks**](/learn/research/benchmarks/test-results-summary): Results of implementations and engineering-related benchmarks for Waku clients.
|
||||||
|
|
||||||
## Research papers
|
## Research papers
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@ Since Waku is built on top of libp2p, they share a lot of concepts and terminolo
|
|||||||
|
|
||||||
## Waku as a service network
|
## Waku as a service network
|
||||||
|
|
||||||
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](/#run-a-waku-node) to support and decentralise the network.
|
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](/run-node) to support and decentralise the network.
|
||||||
|
|
||||||
## Waku as a turnkey solution
|
## Waku as a turnkey solution
|
||||||
|
|
||||||
|
|||||||
@ -1,201 +0,0 @@
|
|||||||
# Migrating to Waku v0.027
|
|
||||||
|
|
||||||
A migration guide for refactoring your application code from Waku v0.026 to v0.027.
|
|
||||||
|
|
||||||
## Table of Contents
|
|
||||||
|
|
||||||
- [Migrating to Waku v0.027](#migrating-to-waku-v0027)
|
|
||||||
- [Table of Contents](#table-of-contents)
|
|
||||||
- [Network Configuration](#network-configuration)
|
|
||||||
- [Default Network Configuration](#default-network-configuration)
|
|
||||||
- [Static Sharding](#static-sharding)
|
|
||||||
- [Auto Sharding](#auto-sharding)
|
|
||||||
- [Pubsub Topic Configuration](#pubsub-topic-configuration)
|
|
||||||
- [Removed APIs](#removed-apis)
|
|
||||||
- [Type Changes](#type-changes)
|
|
||||||
- [Internal/Private Utility Function Changes](#internalprivate-utility-function-changes)
|
|
||||||
|
|
||||||
## Network Configuration
|
|
||||||
|
|
||||||
The way to configure network settings for a Waku node has been simplified. The new NetworkConfig type only allows for Static Sharding or Auto Sharding.
|
|
||||||
|
|
||||||
### Default Network Configuration
|
|
||||||
|
|
||||||
If no network configuration is provided when creating a Light Node, The Waku Network configuration will be used by default.
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode();
|
|
||||||
// This would use the default pubsub topic, that was, `/waku/2/default-waku/proto`
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode();
|
|
||||||
// This will now use The Waku Network configuration by default:
|
|
||||||
// { clusterId: 1, shards: [0,1,2,3,4,5,6,7] }
|
|
||||||
```
|
|
||||||
|
|
||||||
### Static Sharding
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
shardInfo: {
|
|
||||||
clusterId: 1,
|
|
||||||
shards: [0, 1, 2, 3]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
networkConfig: {
|
|
||||||
clusterId: 1,
|
|
||||||
shards: [0, 1, 2, 3]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
### Auto Sharding
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
shardInfo: {
|
|
||||||
clusterId: 1,
|
|
||||||
contentTopics: ["/my-app/1/notifications/proto"]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
networkConfig: {
|
|
||||||
clusterId: 1,
|
|
||||||
contentTopics: ["/my-app/1/notifications/proto"]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
## Pubsub Topic Configuration
|
|
||||||
|
|
||||||
Named pubsub topics are no longer supported. You must use either Static Sharding or Auto Sharding to configure pubsub topics.
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
pubsubTopics: ["/waku/2/default-waku/proto"]
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
|
|
||||||
Use Static Sharding:
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
networkConfig: {
|
|
||||||
clusterId: 1,
|
|
||||||
shards: [0, 1, 2, 3, 4, 5, 6, 7]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
Or use Auto Sharding:
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
networkConfig: {
|
|
||||||
clusterId: 1,
|
|
||||||
contentTopics: ["/your-app/1/default/proto"]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
## Removed APIs
|
|
||||||
|
|
||||||
The following APIs have been removed:
|
|
||||||
|
|
||||||
- ApplicationInfo type: Use `string` for application and version in `NetworkConfig` instead.
|
|
||||||
- `shardInfo` option in `createLightNode`: Use `networkConfig` instead.
|
|
||||||
- `pubsubTopics` option in `createLightNode`: Use `networkConfig` with Static Sharding or Auto Sharding instead.
|
|
||||||
|
|
||||||
If you were using `ApplicationInfo` before, you should now use `ContentTopicInfo` (Auto Sharding) and specify your application and version in the content topic `string`.
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
shardInfo: {
|
|
||||||
clusterId: 1,
|
|
||||||
application: "my-app",
|
|
||||||
version: "1"
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
```typescript
|
|
||||||
import { createLightNode } from "@waku/sdk";
|
|
||||||
|
|
||||||
const waku = await createLightNode({
|
|
||||||
networkConfig: {
|
|
||||||
clusterId: 1,
|
|
||||||
contentTopics: ["/my-app/1/default/proto"]
|
|
||||||
}
|
|
||||||
});
|
|
||||||
```
|
|
||||||
|
|
||||||
## Type Changes
|
|
||||||
|
|
||||||
- `ShardingParams` has been removed. Use `NetworkConfig` instead.
|
|
||||||
- `NetworkConfig` is now defined as `StaticSharding` | `AutoSharding`.
|
|
||||||
- `StaticSharding` is equivalent to the previous `ShardInfo`.
|
|
||||||
- `AutoSharding` is equivalent to the previous `ContentTopicInfo`.
|
|
||||||
|
|
||||||
## Internal/Private Utility Function Changes
|
|
||||||
|
|
||||||
Several utility functions have been updated or added:
|
|
||||||
|
|
||||||
- `ensureShardingConfigured` has been removed. Use `derivePubsubTopicsFromNetworkConfig` instead.
|
|
||||||
- New function `derivePubsubTopicsFromNetworkConfig` has been added to derive pubsub topics from the network configuration.
|
|
||||||
- `shardInfoToPubsubTopics` now accepts `Partial<NetworkConfig>` instead of `Partial<ShardingParams>`.
|
|
||||||
- New function `pubsubTopicsToShardInfo` has been added to convert pubsub topics to a ShardInfo object.
|
|
||||||
|
|
||||||
If you were using any of these utility functions directly, you'll need to update your code accordingly.
|
|
||||||
|
|
||||||
**Before**
|
|
||||||
```typescript
|
|
||||||
import { ensureShardingConfigured } from "@waku/utils";
|
|
||||||
|
|
||||||
const result = ensureShardingConfigured(shardInfo);
|
|
||||||
```
|
|
||||||
|
|
||||||
**After**
|
|
||||||
```typescript
|
|
||||||
import { derivePubsubTopicsFromNetworkConfig } from "@waku/utils";
|
|
||||||
|
|
||||||
const pubsubTopics = derivePubsubTopicsFromNetworkConfig(networkConfig);
|
|
||||||
```
|
|
||||||
Note: The default `NetworkConfig` for The Waku Network is now `{ clusterId: 1, shards: [0,1,2,3,4,5,6,7] }.`
|
|
||||||
@ -85,12 +85,6 @@ const config = {
|
|||||||
to: "/learn/",
|
to: "/learn/",
|
||||||
activeBaseRegex: "^/learn/",
|
activeBaseRegex: "^/learn/",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
position: "left",
|
|
||||||
label: "Research",
|
|
||||||
to: "/research/",
|
|
||||||
activeBaseRegex: "^/research/",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
href: "https://discord.waku.org",
|
href: "https://discord.waku.org",
|
||||||
position: "left",
|
position: "left",
|
||||||
|
|||||||
@ -62,13 +62,13 @@ async function downloadAndSaveFile(url, filePath) {
|
|||||||
const repositories = [
|
const repositories = [
|
||||||
{
|
{
|
||||||
baseUrl: 'https://api.github.com/repos/waku-org/nwaku/contents/docs/benchmarks',
|
baseUrl: 'https://api.github.com/repos/waku-org/nwaku/contents/docs/benchmarks',
|
||||||
baseSavePath: '/docs/research/benchmarks/',
|
baseSavePath: '/docs/learn/research/benchmarks/',
|
||||||
prefixToRemove: "docs/benchmarks/",
|
prefixToRemove: "docs/benchmarks/",
|
||||||
categoryFileContent: "{ \"label\": \"Benchmarks\", \"collapsed\": false }"
|
categoryFileContent: "{ \"label\": \"Benchmarks\", \"collapsed\": false }"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
baseUrl: 'https://api.github.com/repos/waku-org/research/contents/docs',
|
baseUrl: 'https://api.github.com/repos/waku-org/research/contents/docs',
|
||||||
baseSavePath: '/docs/research/research-and-studies/',
|
baseSavePath: '/docs/learn/research/research-and-studies/',
|
||||||
prefixToRemove: "docs/",
|
prefixToRemove: "docs/",
|
||||||
categoryFileContent: "{ \"label\": \"Research and Studies\", \"collapsed\": false }"
|
categoryFileContent: "{ \"label\": \"Research and Studies\", \"collapsed\": false }"
|
||||||
}
|
}
|
||||||
|
|||||||
44
sidebars.js
44
sidebars.js
@ -107,22 +107,42 @@ const sidebars = {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
"learn/security-features",
|
"learn/security-features",
|
||||||
"learn/research",
|
{
|
||||||
|
type: "category",
|
||||||
|
label: "Research",
|
||||||
|
link: {
|
||||||
|
type: "doc",
|
||||||
|
id: "learn/research/index",
|
||||||
|
},
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
type: "category",
|
||||||
|
label: "Benchmarks",
|
||||||
|
collapsed: false,
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
type: "autogenerated",
|
||||||
|
dirName: "learn/research/benchmarks",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: "category",
|
||||||
|
label: "Research and Studies",
|
||||||
|
collapsed: false,
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
type: "autogenerated",
|
||||||
|
dirName: "learn/research/research-and-studies",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
"learn/waku-vs-libp2p",
|
"learn/waku-vs-libp2p",
|
||||||
"learn/glossary",
|
"learn/glossary",
|
||||||
"learn/faq",
|
"learn/faq",
|
||||||
],
|
],
|
||||||
research: [
|
|
||||||
{
|
|
||||||
type: "link",
|
|
||||||
label: "Home",
|
|
||||||
href: "/",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: "autogenerated",
|
|
||||||
dirName: "research",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = sidebars;
|
module.exports = sidebars;
|
||||||
Loading…
x
Reference in New Issue
Block a user