mirror of https://github.com/acid-info/vac.dev.git
Revisit
This commit is contained in:
parent
a8ef6c95d6
commit
cb627f0d5d
|
@ -12,14 +12,18 @@ image: /assets/img/rain.png
|
|||
discuss: https://forum.vac.dev/t/privacy-preserving-p2p-economic-spam-protection-in-waku-v2-with-rate-limiting-nullfiers/66
|
||||
---
|
||||
|
||||
After almost three months working on js-waku,
|
||||
After almost three months working on JS-Waku,
|
||||
we thought it would be a good time to give a proper update.
|
||||
|
||||
<!-- Waku v2 is built for Status and Ethereum ecosystem -->
|
||||
|
||||
First, let's review what is Waku v2.
|
||||
|
||||
Waku v2 comes from a need to have a more scalable, better optimised solution for the Status app to achieve decentralised
|
||||
communications on resource restricted devices (ie, phones).
|
||||
We see a need of such solution not only for ourselves but also for the broader Ethereum ecosystem.
|
||||
We see the need of such solution in the broader Ethereum ecosystem, beyond Status.
|
||||
We are building Waku v2 as a decentralised communication platform for all to use and build onto.
|
||||
For example, this is one of the reasons why all Waku related code and specs are opensource.
|
||||
|
||||
If you want to read more about Waku v2 and what it aims to achieve,
|
||||
go to [What's the Plan for Waku v2?](/waku-v2-plan).
|
||||
|
@ -35,8 +39,8 @@ The nim-waku project doubles as a library, that can be used to add Waku v2 suppo
|
|||
<!-- present the gap js-waku is trying to fill -->
|
||||
|
||||
We believe that dApps and wallets can benefit from the Waku network in several ways.
|
||||
For some dApp, it may make sense to enable user to user communications.
|
||||
For others, machine-to-machine communication could be a great asset.
|
||||
For some dApps, it may make sense to enable user to user communications.
|
||||
For others, machine-to-machine communications could be a great asset.
|
||||
For example, in the case of a DAO with a governance token,
|
||||
Waku could be used for [gas-less polling](https://twitter.com/ethstatus/status/1293963402705018881?s=20).
|
||||
Enabling the DAO to notify their users of a new poll, and users to vote without interacting with the blockchain.
|
||||
|
@ -49,12 +53,13 @@ For this to happen, we need to give developers a library which is easy integrate
|
|||
<!-- explain what we have achieved so far: more on the journey? -->
|
||||
|
||||
JS-Waku is a JavaScript library that allows your dApp, wallet or other web app to interact with the Waku v2 network.
|
||||
It is available right now on [npm](https://www.npmjs.com/package/js-waku), start using it by running `npm install js-waku`.
|
||||
It is available right now on [npm](https://www.npmjs.com/package/js-waku): `npm install js-waku`.
|
||||
|
||||
As it is written in TypeScript, types are included in the npm package to allow easy integration in TypeScript, ClojureScript and other typed languages that compile to JavaScript.
|
||||
As it is written in TypeScript, types are included in the npm package to allow easy integration with TypeScript, ClojureScript and other typed languages that compile to JavaScript.
|
||||
|
||||
Key Waku v2 protocols are already available: [message](https://rfc.vac.dev/spec/14/), [store](https://rfc.vac.dev/spec/13/), [relay](https://rfc.vac.dev/spec/11/) and [light push](https://rfc.vac.dev/spec/19/).
|
||||
Enabling your dApp to:
|
||||
Key Waku v2 protocols are already available:
|
||||
[message](https://rfc.vac.dev/spec/14/), [store](https://rfc.vac.dev/spec/13/), [relay](https://rfc.vac.dev/spec/11/) and [light push](https://rfc.vac.dev/spec/19/),
|
||||
enabling your dApp to:
|
||||
|
||||
- Send and receive near-instant messages on the Waku network (relay),
|
||||
- Query nodes for messages that may have been missed, e.g. due to poor cellular network (store),
|
||||
|
@ -64,11 +69,11 @@ We focused the past month on developing a [ReactJS Chat App](https://status-im.g
|
|||
The aim was to create enough building blocks in JS-Waku to enable this showcase web app.
|
||||
Most of the focus was on getting familiar with both the Waku v2 [RFCs](https://rfc.vac.dev/)
|
||||
and the [js-libp2p](https://github.com/libp2p/js-libp2p) library that we heavily rely on.
|
||||
|
||||
Soon, we will [use it daily for dogfooding](https://github.com/status-im/nim-waku/issues/399) purposes.
|
||||
|
||||
JS-Waku is the second implementation of Waku v2 so a lot of effort on interoperability was needed.
|
||||
For example, to ensure compatibility with the reference implementation (nim-waku),
|
||||
JS-Waku is the second implementation of Waku v2 protocol,
|
||||
so a lot of effort on interoperability was needed.
|
||||
For example, to ensure compatibility with the nim-waku reference implementation,
|
||||
we run our [tests against wakunode2](https://github.com/status-im/js-waku/blob/90c90dea11dfd1277f530cf5d683fb92992fe141/src/lib/waku_relay/index.spec.ts#L137) as part of the CI.
|
||||
|
||||
As we built the [web chat app](https://github.com/status-im/js-waku/tree/main/examples/web-chat),
|
||||
|
@ -93,17 +98,20 @@ while preserving this out of the box experience.
|
|||
<!-- explain what is next for js-waku -->
|
||||
|
||||
Next, we are directing our attention towards [Developer Experience](https://github.com/status-im/js-waku/issues/68).
|
||||
We already have [documentation ready](https://www.npmjs.com/package/js-waku) but we want to provide more:
|
||||
[Tutorials](https://github.com/status-im/js-waku/issues/56), more examples and showing how [JS-Waku can be used with Web3](https://github.com/status-im/js-waku/issues/72).
|
||||
We already have [documentation](https://www.npmjs.com/package/js-waku) available but we want to provide more:
|
||||
[Tutorials](https://github.com/status-im/js-waku/issues/56), various examples and showing how [JS-Waku can be used with Web3](https://github.com/status-im/js-waku/issues/72).
|
||||
|
||||
<!-- explain where can people use js-waku -->
|
||||
|
||||
If you are as excited as us by JS-Waku, you can start building a dapp with it, you can find documentation on the [npmjs page](https://www.npmjs.com/package/js-waku).
|
||||
If you are as excited as us by JS-Waku, why not building a dApp with it?
|
||||
You can find documentation on the [npmjs page](https://www.npmjs.com/package/js-waku).
|
||||
|
||||
Whether you are a developer you can still come chat with us on Discord [#waku (core development)](https://discord.gg/uWbdCmFU) or [#waku-support (dev support)](https://discord.gg/VChNsDdj) (soon to be migrated to Waku!).
|
||||
Even better, you can simply join us in building JS-Waku as we are currently have a position open:
|
||||
[js-waku: Wallet & Dapp Integration Developer](https://status.im/our_team/jobs.html?gh_jid=3157894).
|
||||
|
||||
Whether you are a developer, you can still come chat with us on Discord [#waku (core development)](https://discord.gg/uWbdCmFU) or [#waku-support (dev support)](https://discord.gg/VChNsDdj) (soon to be migrated to Waku!).
|
||||
If you have any ideas on how Waku could enable a specific dapp or use case, do share, we are always keen to hear it.
|
||||
|
||||
|
||||
<!-- explain how people can help: use it or even propose ideas -->
|
||||
|
||||
<!-- mention JD -->
|
||||
|
|
Loading…
Reference in New Issue