JavaScript implementation of Waku v2 https://js.waku.org
Go to file
bors[bot] 62b27fddd6
Merge #9
9: chat example r=D4nte a=D4nte

Resolves #15

Co-authored-by: Franck Royer <franck@royer.one>
2021-04-01 02:57:41 +00:00
.github Build nim-waku if the binary cannot be executed 2021-03-26 14:35:18 +11:00
.vscode Initial commit 2021-03-05 09:34:01 +11:00
nim-waku@d1c1a0ca13 Update nim-waku, `0x` now optional in RPC requests 2021-03-29 14:25:03 +11:00
proto Avoid possible type name clash between js-waku and consuming apps 2021-04-01 11:18:35 +11:00
src Avoid possible type name clash between js-waku and consuming apps 2021-04-01 11:18:35 +11:00
.cspell.json Override Gossipsub.join` function to consider waku peers 2021-03-24 12:22:00 +11:00
.editorconfig Initial commit 2021-03-05 09:34:01 +11:00
.eslintrc.json Use ts-proto 2021-03-22 15:49:58 +11:00
.gitignore Use ts-proto 2021-03-22 15:49:58 +11:00
.gitmodules Re-add nim-waku submodule 2021-03-19 11:23:34 +11:00
.mocharc.json Partial conversion to ts-node/mocha 2021-03-22 15:05:03 +11:00
.prettierignore Use waku messages over waku relay 2021-03-10 16:22:49 +11:00
README.md Update readme to include chat app 2021-04-01 11:15:51 +11:00
bors.toml Setup bors 2021-03-24 15:59:27 +11:00
buf.gen.yaml Implement chat message protobuf to support nick and time handles 2021-04-01 11:01:15 +11:00
buf.yaml Use waku messages over waku relay 2021-03-10 16:22:49 +11:00
jest.config.js Migrate to jest for better debugging experience 2021-03-17 15:34:58 +11:00
package-lock.json Use ts-proto 2021-03-22 15:49:58 +11:00
package.json Correct package name 2021-04-01 11:01:15 +11:00
tsconfig.json Revert unnecessary ts config changes 2021-03-22 22:06:10 +11:00
tsconfig.module.json Initial commit 2021-03-05 09:34:01 +11:00

README.md

js-waku

A JavaScript implementation of the Waku v2 protocol.

This is a Work In Progress

You can track progress on the project board.

Examples

Chat app

A node chat app is provided as a working example of the library. It is interoperable with the nim-waku chat app example. To run the chat app:

npm install
npm run chat:app -- --staticNode /ip4/134.209.139.210/tcp/30303/p2p/16Uiu2HAmPLe7Mzm8TsYUubgCAW1aJoeFScxrLj8ppHFivPo97bUZ --listenAddr /ip4/0.0.0.0/tcp/55123

The --listenAddr parameter is optional, however NAT passthrough is not yet supported, so you'll need the listening port to be open to receive messages from the fleet.

Contributing

To build and test this repository, you need:

To ensure interoperability with nim-waku, some tests are run against a nim-waku node. This is why nim-waku is present as a git submodule, which itself contain several submodules. At this stage, it is not possible to exclude nim-waku tests, hence git submodule update --init --recursive is run before testing (see pretest script).

To build nim-waku, you also need Rust.